I recognize I am doing something quite unusual but very convenient for me; I copied the CBC, CLP, CGL, CoinUtils and Osi repositories into a thirds party folder in my project and I created cmake files for each third party project (attached the Clp cmake file). The goal is to compile the Cbc files (and all their dependencies) along with the rest of the project, using the same BLAS+LAPACK, same optimizations, etc. The desired effect is that I can handle the compilation for different environments easier.
At the top of the file AbcSimplex.hpp there are some classes declared, that are implemented elsewhere:
class AbcSimplex;
class AbcDualRowPivot;
class AbcPrimalColumnPivot;
class AbcSimplexFactorization;
class AbcNonLinearCost;
class OsiAbcSolverInterface;
class CoinWarmStartBasis;
class ClpDisasterHandler;
class AbcSimplexProgress;
class AbcMatrix;
class AbcTolerancesEtc;
Since the order of the files in the cmake file is probably wrong, I'm getting the following error:
In file included from AbcDualRowDantzig.cpp:6: AbcSimplex.hpp:1423:22: error: field ‘abcProgress_’ has incomplete type ‘AbcSimplexProgress’
1423 | AbcSimplexProgress abcProgress_;
| ^~~~~~~~~~~~
AbcSimplex.hpp:32:7: note: forward declaration of ‘class AbcSimplexProgress’
32 | class AbcSimplexProgress;
I know about cmake but I know nothing about makefiles, hence this question.
Hi,
I recognize I am doing something quite unusual but very convenient for me; I copied the CBC, CLP, CGL, CoinUtils and Osi repositories into a thirds party folder in my project and I created cmake files for each third party project (attached the Clp cmake file). The goal is to compile the Cbc files (and all their dependencies) along with the rest of the project, using the same BLAS+LAPACK, same optimizations, etc. The desired effect is that I can handle the compilation for different environments easier.
At the top of the file
AbcSimplex.hpp
there are some classes declared, that are implemented elsewhere:Since the order of the files in the cmake file is probably wrong, I'm getting the following error:
I know about cmake but I know nothing about makefiles, hence this question.
Which is the Clp file compilation order?