boost-1.45.0 / MSVC 9.0: bjam --layout=system fails

hello, i'm trying to build 1.45.0 on Windows 7 with MSVC 9.0. I'm using the Windows SDK shell. "bootstrap; bjam" passes. "bootstrap; bjam --layout=system" fails: c:/MinGW/msys/1.0/home/roman/wc/boost_1_45_0/tools/build/v2/build\virtual-target.jam:1066: in virtual-target.register-actual-name from module virtual-target error: Duplicate name of actual target: <pstage\lib>libboost_date_time.lib error: previous virtual target { common%common.copy-libboost_date_time.lib.STATIC_LIB { msvc%msvc.archive-libboost_date_time.lib.STATIC_LIB { msvc%msvc.compile.c++-gregorian\greg_month.obj.OBJ { gregorian/greg_month.cpp.CPP } } { msvc%msvc.compile.c++-gregorian\greg_weekday.obj.OBJ { gregorian/greg_weekday.cpp.CPP } } { msvc%msvc.compile.c++-gregorian\date_generators.obj.OBJ { gregorian/date_generators.cpp.CPP } } } } error: created from ./stage-proper error: another virtual target { common%common.copy-libboost_date_time.lib.STATIC_LIB { msvc%msvc.archive-libboost_date_time.lib.STATIC_LIB { msvc%msvc.compile.c++-gregorian\greg_month.obj.OBJ { gregorian/greg_month.cpp.CPP } } { msvc%msvc.compile.c++-gregorian\greg_weekday.obj.OBJ { gregorian/greg_weekday.cpp.CPP } } { msvc%msvc.compile.c++-gregorian\date_generators.obj.OBJ { gregorian/date_generators.cpp.CPP } } } } error: created from ./stage-proper error: added properties: <debug-symbols>off <define>NDEBUG <inlining>full <optimization>speed <runtime-debugging>off <variant>release error: removed properties: <debug-symbols>on <inlining>off <optimization>off <runtime-debugging>on <variant>debug c:/MinGW/msys/1.0/home/roman/wc/boost_1_45_0/tools/build/v2/build\virtual-target.jam:490: in actualize-no-scanner from module object(file-target)@3863 c:/MinGW/msys/1.0/home/roman/wc/boost_1_45_0/tools/build/v2/build\virtual-target.jam:135: in object(file-target)@3863.actualize from module object(file-target)@3863 c:/MinGW/msys/1.0/home/roman/wc/boost_1_45_0/tools/build/v2\build-system.jam:748: in load from module build-system c:\MinGW\msys\1.0\home\roman\wc\boost_1_45_0\tools\build\v2/kernel\modules.jam:283: in import from module modules c:\MinGW\msys\1.0\home\roman\wc\boost_1_45_0\tools\build\v2\kernel\bootstrap.jam:142: in boost-build from module c:\MinGW\msys\1.0\home\roman\wc\boost_1_45_0\boost-build.jam:17: in module scopefrom module i need the system layout build. how can i get around the error? -- roman

Roman Neuhauser wrote:
hello,
i'm trying to build 1.45.0 on Windows 7 with MSVC 9.0. I'm using the Windows SDK shell.
"bootstrap; bjam" passes.
"bootstrap; bjam --layout=system" fails:
On Windows, --build-type=complete is the default, and it's not compatible with --layout=system because there are no funny letters to encode all variants that --build-type=complete wants to create. Use --build-type=minimal, or specify properties by hand. - Volodya

# vladimir@codesourcery.com / 2010-12-02 17:44:50 +0300:
Roman Neuhauser wrote:
i'm trying to build 1.45.0 on Windows 7 with MSVC 9.0. I'm using the Windows SDK shell.
"bootstrap; bjam" passes.
"bootstrap; bjam --layout=system" fails:
On Windows, --build-type=complete is the default, and it's not compatible with --layout=system because there are no funny letters to encode all variants that --build-type=complete wants to create. Use --build-type=minimal, or specify properties by hand.
Thanks, I missed this in the bjam --help output. However, bjam --clean bjam --without-mpi --build-type=minimal --layout=system gives the same error. -- roman

# neuhauser@sigpipe.cz / 2010-12-02 18:21:44 +0100:
# vladimir@codesourcery.com / 2010-12-02 17:44:50 +0300:
Roman Neuhauser wrote:
i'm trying to build 1.45.0 on Windows 7 with MSVC 9.0. I'm using the Windows SDK shell.
"bootstrap; bjam" passes.
"bootstrap; bjam --layout=system" fails:
On Windows, --build-type=complete is the default, and it's not compatible with --layout=system because there are no funny letters to encode all variants that --build-type=complete wants to create. Use --build-type=minimal, or specify properties by hand.
Thanks, I missed this in the bjam --help output. However,
bjam --clean bjam --without-mpi --build-type=minimal --layout=system
gives the same error.
i got further with bjam --without-mpi --layout=system link=static threading=single variant=release the libraries get built and put in stage/lib, but seem to be unusable: link.exe /nologo /INCREMENTAL:NO /LIBPATH:..\..\boost_1_45_0\stage\lib /OUT:initest-static.exe initest-static.o libiniphile.a libboost_unit_test_framework.lib LINK : fatal error LNK1104: cannot open file 'boost_unit_test_framework-vc90-mt-1_45.lib' NMAKE : fatal error U1077: '"C:\Program Files\Microsoft Visual Studio 9.0\VC\Bin\link.exe"' : return code '0x450' Stop. why is it looking for boost_unit_test_framework-vc90-mt-1_45.lib when i requested 1. non-tagged filenames 2. non-thread-safe libraries ? -- roman

why is it looking for boost_unit_test_framework-vc90-mt-1_45.lib when i requested
1. non-tagged filenames 2. non-thread-safe libraries
As for (2), you probably compile you project with multi-threaded CRT (/MT flag, look at "Code generation" page of the project options).
participants (3)
-
Igor R
-
Roman Neuhauser
-
Vladimir Prus