[Cbc] Cbc build fails whwn cross-compiled for 64 bit Windows

Stefan Vigerske stefan at math.hu-berlin.de
Wed Feb 23 16:35:41 EST 2011


Hi,

> This is probably strictly not an issue with CBC, but it happened when I
> was compile CBC, so I am reporting it here.
>
> I have actually noticed this before, but I am not sure I have reported
> it, probably because I didn't know which mailing list to post to.

I think it should be the CoinUtils mailing list.

> I am cross-compiling for 64 bit Windows, using MinGW-w64, running on
> Linux. This fails unless the source is modified. The failure happens
> when trying to compile CoinModelUseful2.cpp (in CoinUtils):
>
> ../../../CoinUtils/src/CoinModelUseful2.cpp: In function 'double
> yyparse(symrec*&, const char*, char*&, int&, const double*, const
> CoinModelHash&, int&, double, int&, YYSTYPE&, int&)':
> ../../../CoinUtils/src/CoinModelUseful2.cpp:950:3: error: ISO C++ 1998
> does not support 'long long'
>
> This fails because g++ is called with the -pedantic-errors flag, and
> long long is not part of the C++ standard. I assume long long is used
> here to represent a word-sized integer, because only long long (of the
> standard C integer types) is word-sized (64 bit) in Microsoft C/C++.

Looks to me like the CoinUtils configure.ac could easily be extended to 
add a -Wno-long-long to the compiler flags if it decides to set 
CoinIntPtr or CoinInt64 to "long long" - or just in any case :-).

Stefan



More information about the Cbc mailing list