[Cbc] Errors compiling CBC 2.9.3 in Mac OS X 10.8.5

John Forrest john.forrest at fastercoin.com
Mon Mar 16 05:00:23 EDT 2015


Noli,

Modified ClpSimplexNonLinear and ClpSimplexOther to get rid of warnings.

I will leave ClpSolve compiler error for someone else as looks like a 
Mac OS problem - not getting correct definition for signal.

John
On 16/03/15 02:47, Noli Sicad wrote:
> Hi John,
>
> I got problem (i.e. errors) in compiling CBC 2.9.3 and trunk as well.
>
> Here's the errors (below).
>
> Regards, Noli
>
> ~~~~~~~~
>
> Documents/A_CBC/cbc_293/cbc_2.9.3/ThirdParty/Glpk/glpk/src/amd
> -DCOIN_HAS_CLP -arch x86_64 -DCLP_BUILD -MT ClpSimplexNonlinear.lo -MD
> -MP -MF .deps/ClpSimplexNonlinear.Tpo -c ClpSimplexNonlinear.cpp -o
> ClpSimplexNonlinear.o
> ClpSimplexNonlinear.cpp:1528:45: warning: use of logical '&&' with
> constant operand [-Wconstant-logical-operand]
>                           if (numberNonBasic && 0) {
>                                              ^  ~
> ClpSimplexNonlinear.cpp:1528:45: note: use '&' for a bitwise operation
>                           if (numberNonBasic && 0) {
>                                              ^~
>                                              &
> ClpSimplexNonlinear.cpp:1528:45: note: remove constant to silence this warning
>                           if (numberNonBasic && 0) {
>                                             ~^~~~
> 1 warning generated.
> if /bin/sh ../../libtool --tag=CXX --mode=compile clang++
> -DHAVE_CONFIG_H -I. -I`echo .`
> -I/Users/nsicad/Documents/A_CBC/cbc_293/cbc_2.9.3/ThirdParty/Glpk
> -I/Users/nsicad/Documents/A_CBC/cbc_293/cbc_2.9.3/ThirdParty/Glpk/glpk/include
> -I/Users/nsicad/Documents/A_CBC/cbc_293/cbc_2.9.3/ThirdParty/Glpk/glpk/src/amd
>    -I/Users/nsicad/Documents/A_CBC/cbc_293/cbc_2.9.3/CoinUtils/src
> -I/Users/nsicad/Documents/A_CBC/cbc_293/cbc_2.9.3/ThirdParty/Glpk
> -I/Users/nsicad/Documents/A_CBC/cbc_293/cbc_2.9.3/ThirdParty/Glpk/glpk/include
> -I/Users/nsicad/Documents/A_CBC/cbc_293/cbc_2.9.3/ThirdParty/Glpk/glpk/src/amd
>     -DCOIN_HAS_CLP     -arch x86_64   -DCLP_BUILD -MT
> ClpSimplexOther.lo -MD -MP -MF ".deps/ClpSimplexOther.Tpo" -c -o
> ClpSimplexOther.lo ClpSimplexOther.cpp; \
> 	then mv -f ".deps/ClpSimplexOther.Tpo" ".deps/ClpSimplexOther.Plo";
> else rm -f ".deps/ClpSimplexOther.Tpo"; exit 1; fi
>   clang++ -DHAVE_CONFIG_H -I. -I.
> -I/Users/nsicad/Documents/A_CBC/cbc_293/cbc_2.9.3/ThirdParty/Glpk
> -I/Users/nsicad/Documents/A_CBC/cbc_293/cbc_2.9.3/ThirdParty/Glpk/glpk/include
> -I/Users/nsicad/Documents/A_CBC/cbc_293/cbc_2.9.3/ThirdParty/Glpk/glpk/src/amd
> -I/Users/nsicad/Documents/A_CBC/cbc_293/cbc_2.9.3/CoinUtils/src
> -I/Users/nsicad/Documents/A_CBC/cbc_293/cbc_2.9.3/ThirdParty/Glpk
> -I/Users/nsicad/Documents/A_CBC/cbc_293/cbc_2.9.3/ThirdParty/Glpk/glpk/include
> -I/Users/nsicad/Documents/A_CBC/cbc_293/cbc_2.9.3/ThirdParty/Glpk/glpk/src/amd
> -DCOIN_HAS_CLP -arch x86_64 -DCLP_BUILD -MT ClpSimplexOther.lo -MD -MP
> -MF .deps/ClpSimplexOther.Tpo -c ClpSimplexOther.cpp -o
> ClpSimplexOther.o
> ClpSimplexOther.cpp:10043:50: warning: operator '?:' has lower
> precedence than '+'; '+' will be evaluated first [-Wparentheses]
>                       iColumn,length+(jRowLower<0||jRowUpper<0) ? 1 : 2,
>                               ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^
> ClpSimplexOther.cpp:10043:50: note: place parentheses around the '+'
> expression to silence this warning
>                       iColumn,length+(jRowLower<0||jRowUpper<0) ? 1 : 2,
>                                                                 ^
>                               (                                )
> ClpSimplexOther.cpp:10043:50: note: place parentheses around the '?:'
> expression to evaluate it first
>                       iColumn,length+(jRowLower<0||jRowUpper<0) ? 1 : 2,
>                                                                 ^
>                                      (                                 )
> 1 warning generated.
> if /bin/sh ../../libtool --tag=CXX --mode=compile clang++
> -DHAVE_CONFIG_H -I. -I`echo .`
> -I/Users/nsicad/Documents/A_CBC/cbc_293/cbc_2.9.3/ThirdParty/Glpk
> -I/Users/nsicad/Documents/A_CBC/cbc_293/cbc_2.9.3/ThirdParty/Glpk/glpk/include
> -I/Users/nsicad/Documents/A_CBC/cbc_293/cbc_2.9.3/ThirdParty/Glpk/glpk/src/amd
>    -I/Users/nsicad/Documents/A_CBC/cbc_293/cbc_2.9.3/CoinUtils/src
> -I/Users/nsicad/Documents/A_CBC/cbc_293/cbc_2.9.3/ThirdParty/Glpk
> -I/Users/nsicad/Documents/A_CBC/cbc_293/cbc_2.9.3/ThirdParty/Glpk/glpk/include
> -I/Users/nsicad/Documents/A_CBC/cbc_293/cbc_2.9.3/ThirdParty/Glpk/glpk/src/amd
>     -DCOIN_HAS_CLP     -arch x86_64   -DCLP_BUILD -MT
> ClpSimplexPrimal.lo -MD -MP -MF ".deps/ClpSimplexPrimal.Tpo" -c -o
> ClpSimplexPrimal.lo ClpSimplexPrimal.cpp; \
> 	then mv -f ".deps/ClpSimplexPrimal.Tpo" ".deps/ClpSimplexPrimal.Plo";
> else rm -f ".deps/ClpSimplexPrimal.Tpo"; exit 1; fi
>   clang++ -DHAVE_CONFIG_H -I. -I.
> -I/Users/nsicad/Documents/A_CBC/cbc_293/cbc_2.9.3/ThirdParty/Glpk
> -I/Users/nsicad/Documents/A_CBC/cbc_293/cbc_2.9.3/ThirdParty/Glpk/glpk/include
> -I/Users/nsicad/Documents/A_CBC/cbc_293/cbc_2.9.3/ThirdParty/Glpk/glpk/src/amd
> -I/Users/nsicad/Documents/A_CBC/cbc_293/cbc_2.9.3/CoinUtils/src
> -I/Users/nsicad/Documents/A_CBC/cbc_293/cbc_2.9.3/ThirdParty/Glpk
> -I/Users/nsicad/Documents/A_CBC/cbc_293/cbc_2.9.3/ThirdParty/Glpk/glpk/include
> -I/Users/nsicad/Documents/A_CBC/cbc_293/cbc_2.9.3/ThirdParty/Glpk/glpk/src/amd
> -DCOIN_HAS_CLP -arch x86_64 -DCLP_BUILD -MT ClpSimplexPrimal.lo -MD
> -MP -MF .deps/ClpSimplexPrimal.Tpo -c ClpSimplexPrimal.cpp -o
> ClpSimplexPrimal.o
> if /bin/sh ../../libtool --tag=CXX --mode=compile clang++
> -DHAVE_CONFIG_H -I. -I`echo .`
> -I/Users/nsicad/Documents/A_CBC/cbc_293/cbc_2.9.3/ThirdParty/Glpk
> -I/Users/nsicad/Documents/A_CBC/cbc_293/cbc_2.9.3/ThirdParty/Glpk/glpk/include
> -I/Users/nsicad/Documents/A_CBC/cbc_293/cbc_2.9.3/ThirdParty/Glpk/glpk/src/amd
>    -I/Users/nsicad/Documents/A_CBC/cbc_293/cbc_2.9.3/CoinUtils/src
> -I/Users/nsicad/Documents/A_CBC/cbc_293/cbc_2.9.3/ThirdParty/Glpk
> -I/Users/nsicad/Documents/A_CBC/cbc_293/cbc_2.9.3/ThirdParty/Glpk/glpk/include
> -I/Users/nsicad/Documents/A_CBC/cbc_293/cbc_2.9.3/ThirdParty/Glpk/glpk/src/amd
>     -DCOIN_HAS_CLP     -arch x86_64   -DCLP_BUILD -MT ClpSolve.lo -MD
> -MP -MF ".deps/ClpSolve.Tpo" -c -o ClpSolve.lo ClpSolve.cpp; \
> 	then mv -f ".deps/ClpSolve.Tpo" ".deps/ClpSolve.Plo"; else rm -f
> ".deps/ClpSolve.Tpo"; exit 1; fi
>   clang++ -DHAVE_CONFIG_H -I. -I.
> -I/Users/nsicad/Documents/A_CBC/cbc_293/cbc_2.9.3/ThirdParty/Glpk
> -I/Users/nsicad/Documents/A_CBC/cbc_293/cbc_2.9.3/ThirdParty/Glpk/glpk/include
> -I/Users/nsicad/Documents/A_CBC/cbc_293/cbc_2.9.3/ThirdParty/Glpk/glpk/src/amd
> -I/Users/nsicad/Documents/A_CBC/cbc_293/cbc_2.9.3/CoinUtils/src
> -I/Users/nsicad/Documents/A_CBC/cbc_293/cbc_2.9.3/ThirdParty/Glpk
> -I/Users/nsicad/Documents/A_CBC/cbc_293/cbc_2.9.3/ThirdParty/Glpk/glpk/include
> -I/Users/nsicad/Documents/A_CBC/cbc_293/cbc_2.9.3/ThirdParty/Glpk/glpk/src/amd
> -DCOIN_HAS_CLP -arch x86_64 -DCLP_BUILD -MT ClpSolve.lo -MD -MP -MF
> .deps/ClpSolve.Tpo -c ClpSolve.cpp -o ClpSolve.o
> In file included from ClpSolve.cpp:360:
> /Users/nsicad/Documents/A_CBC/cbc_293/cbc_2.9.3/CoinUtils/src/CoinSignal.hpp:99:21:
> error: C++ requires a type specifier for all declarations
>     typedef decltype(SIG_DFL) CoinSighandler_t;
>                      ^~~~~~~
> /usr/include/sys/signal.h:130:19: note: expanded from macro 'SIG_DFL'
> #define SIG_DFL         (void (*)(int))0
>                          ~^
> In file included from ClpSolve.cpp:360:
> /Users/nsicad/Documents/A_CBC/cbc_293/cbc_2.9.3/CoinUtils/src/CoinSignal.hpp:99:21:
> error: expected ')'
>     typedef decltype(SIG_DFL) CoinSighandler_t;
>                      ^
> /usr/include/sys/signal.h:130:33: note: expanded from macro 'SIG_DFL'
> #define SIG_DFL         (void (*)(int))0
>                                         ^
> /Users/nsicad/Documents/A_CBC/cbc_293/cbc_2.9.3/CoinUtils/src/CoinSignal.hpp:99:20:
> note: to match this '('
>     typedef decltype(SIG_DFL) CoinSighandler_t;
>                     ^
> /Users/nsicad/Documents/A_CBC/cbc_293/cbc_2.9.3/CoinUtils/src/CoinSignal.hpp:99:12:
> error: C++ requires a type specifier for all declarations
>     typedef decltype(SIG_DFL) CoinSighandler_t;
>     ~~~~~~~ ^
> /Users/nsicad/Documents/A_CBC/cbc_293/cbc_2.9.3/CoinUtils/src/CoinSignal.hpp:99:29:
> error: expected ';' after top level declarator
>     typedef decltype(SIG_DFL) CoinSighandler_t;
>                              ^
>                              ;
> ClpSolve.cpp:898:6: error: use of undeclared identifier 'CoinSighandler_t'
>       CoinSighandler_t saveSignal = static_cast<CoinSighandler_t> (0);
>       ^
> ClpSolve.cpp:902:11: error: use of undeclared identifier 'saveSignal'
>            saveSignal = signal(SIGINT, signal_handler);
>            ^
> ClpSolve.cpp:3707:26: error: use of undeclared identifier 'saveSignal'
>            signal(SIGINT, saveSignal);
>                           ^
> 7 errors generated.
> make[3]: *** [ClpSolve.lo] Error 1
> make[2]: *** [all] Error 2
> make[1]: *** [all-recursive] Error 1
> make: *** [all-recursive] Error 1
> Nolis-MacBook-Pro:cbc_2.9.3 nsicad$
> _______________________________________________
> Cbc mailing list
> Cbc at list.coin-or.org
> http://list.coin-or.org/mailman/listinfo/cbc
>
>



More information about the Cbc mailing list