Boost logo

Boost Users :

Subject: Re: [Boost-users] Problems compiling those libraries that are not header only on 64 bit Windows 7
From: Ted Byers (r.ted.byers_at_[hidden])
Date: 2011-01-27 08:29:42


Thanks Vladimir

-----Original Message-----
From: boost-users-bounces_at_[hidden]
[mailto:boost-users-bounces_at_[hidden]] On Behalf Of Vladimir Prus
Sent: January-27-11 4:18 AM
To: boost-users_at_[hidden]
Subject: Re: [Boost-users] Problems compiling those libraries that are not
header only on 64 bit Windows 7

Ted Byers wrote:

>>
>> I used a prebuilt distribution of bjam for all my attempts to build
>> the boost libraries using msvc++. I did not compile it myself.

>Please use the bootstrap.bat script to build bjam from the 1.45 release,
and then use it.

OK, I'll try that today.

>>>From the C:\boost_1_45_0 directory, I tried the following to keep the
>>>builds
>> for the two versions separate (planning on changing the library
>> directories based on the build environment), but when both finished,
>> both
>> C:\boost_1_45_0\lib\msvc2010\x64 and bjam
>> --build-dir=C:\boost_1_45_0\lib\msvc2010\x32 were empty and
>> C:\boost_1_45_0\stage\lib had 606 items.
>>
>>
>>
>> bjam --build-dir=C:\boost_1_45_0\lib\msvc2010\x32
>> --build-type=complete
>>
>> bjam --build-dir=C:\boost_1_45_0\lib\msvc2010\x64
>> --build-type=complete
>
>I am somewhat confused -- those two commands differ only in --build-dir
option, therefore they will build boost using the same version of the same
compiler.
>If you with to use different versions, specify toolset=msvc-10.0 and
toolset=msvc-9.0 during those invocations. Also, use address-model=64 if you
wish to build 64-bit libraries. See:
>
I guess I should have also said I did these in different shells, one with
the environment for msvc2005, msvc 2010, and the cygwin bash shell. I
thought bjam would pick the right compiler/version from the environment
because I had read that it autodetects the right version from the
environment.

>http://www.boost.org/boost-build2/doc/html/bbv2/reference/tools.html#bbv2.r
eference.tools.compiler.msvc
>
>You should also use --stagedir=XXX to put the final build products into
different directories.
>--build-dir is only for specifying intermediate directory.

OK, I see. I didn't find what stage was for, so I didn't use it. Now I
will.

>> And if I execute bjam in status, I get a result that says something
>> like 30 out of 30K tests failed. (Is that normal?)
>
>I think so.
Thanks.

>> Here are the results from my latest attempt using cygwin.
>>
>>
>>
>> $ ../boost-jam-3.1.18/bin.cygwinx86/bjam --layout=versioned
>> --build-type=complete
>>
>> warning: No toolsets are configured.
>>
>> warning: Configuring default toolset "gcc".
>>
>> warning: If the default is wrong, your build may not work correctly.
>>
>> warning: Use the "toolset=xxxxx" option to override our guess.
>>
>> warning: For more configuration options, please consult
>>
>> warning:
>> http://boost.org/boost-build2/doc/html/bbv2/advanced/configuration.htm
>> l
>>
>>
>>
>> Building the Boost C++ Libraries.
>>
>>
>>
>>
>>
>> /home/Ted/boost_1_45_0/tools/build/v2/build/configure.jam:145: in
>> builds-raw
>>
>> *** argument error
>>
>> * rule UPDATE_NOW ( targets * : log ? : ignore-minus-n ? )
>
>You need to build bundled bjam using bootstrap.sh

OK, I'll try that today too.

Thanks again

Ted


Boost-users list run by williamkempf at hotmail.com, kalb at libertysoft.com, bjorn.karlsson at readsoft.com, gregod at cs.rpi.edu, wekempf at cox.net