32 vs 34 libraries

Tim Prince tprince@myrealbox.com
Mon Jan 28 00:23:00 GMT 2008


g-h-d wrote:
> 
> 
> Ian Lance Taylor-3 wrote:
>>
>>> I am trying to install mcmc++
>>> (http://darwin.eeb.uconn.edu/mcmc++/mcmc++-1.2.tar.gz) using ./configure
>>> and
>>> make (see error below). The culprit is the following line of code in file
>>> lot.cpp:52
>>>
>>> namespace lot_conditions {
>>> BOOST_STATIC_ASSERT(sizeof(long) * CHAR_BIT == 32); 
>>> }
>>>
>>> I suspect this has to do with 64bits. Please help.
>> If you are trying to build this code in 64-bit mode, you are out of
>> luck.  You have to change the source code.  We can't help.
>>
>> Ian
>>
>>
> 
> Thanks. What exactly do you mean by in "64-bit mode"? Is there a command for
> building that switches to 32bit?
> 
> My CPU is 64 but also 32 compatible (Intel core duo 2) and that my OS 
> (Ubuntu) is set up for 64. That's about all I know.
> 
> 
> 
If you have 64-bit OS (uname shows x86-64), your gcc defaults to 64-bit
mode, unless you set -m32.  The code fragment you quote appears designed
to throw an assertion failure, if data types don't default to expected
sizes.  If they wanted a 32-bit unsigned integer, there are standard C
data types for that.



More information about the Gcc-help mailing list