Boost logo

Boost Users :

From: Vladimir Prus (ghost_at_[hidden])
Date: 2008-03-29 02:59:13


Stephen Nuchia wrote:

> This is a showstopper for me right now, though I am by no means an
> expert at running bjam. On a Windows (server 2003) 64-bit platform with
> MSVC 9.0 I am trying to build the major permutations of the library in
> both 32- and 64-bit variants. I was able to find command lines that
> appear to do the job for the 32-bit, debug/release, shared/static
> combinations and for the static combinations in 64-bit mode.
>
> I'm getting the following output when I try to build shared libraries
> for 64-bit, with "shared" or "static" or no specification for link and
> runtime-link
>
> C:\code\Version9\boost>bjam --toolset=msvc
> msvc/architecture=x86/address-model=64/runtime-link=shared/link=shared
.......

> C:/code/Version9/boost/tools/build/v2/build\virtual-target.jam:996: in
> virtual-t
> arget.register-actual-name from module virtual-target
> error: Duplicate name of actual target:
> <pstage\lib>boost_date_time-vc90-mt-gd-1
> _35.dll
> error: previous virtual target {
> common%common.copy-boost_date_time-vc90-mt-gd-1
> _35.dll.SHARED_LIB {
> msvc%msvc.link.dll-boost_date_time-vc90-mt-gd-1_35.dll.SHAR
> ED_LIB { msvc%msvc.compile.c++-greg_month.obj.OBJ {
> gregorian/greg_month.cpp.CPP
> } } { msvc%msvc.compile.c++-greg_weekday.obj.OBJ {
> gregorian/greg_weekday.cpp.C
> PP } } { msvc%msvc.compile.c++-date_generators.obj.OBJ {
> gregorian/date_generato

Please use the following command line:

bjam --toolset=msvc
architecture=x86 address-model=64 runtime-link=shared link=shared

The command line you've specified say:
1. Build with 'msvc'
2. Build also with 'msvc' using address-model=64, etc

So, in essence you request two builds. The 64-bitness is presently
not represented in library name, or library path. So, you request to
create two variants, and place them in the files with the same name.
Boost.Build detects this conflict and reports its.

You might want to note that 'msvc' is shorthard for toolset=msvc,
whereas --toolset=msvc is actually same as 'toolset=msvc'. It's
unfortunate that --toolset option exists, and advertised in the
getting started docs, but that's not a topic for today.

Also note that it would be great if your configure your mail client
not to wrap long lines into unreadability :-)

- Volodya


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