Boost logo

Boost-Build :

Subject: [Boost-build] boost build quirks and question
From: Robert Ramey (ramey_at_[hidden])
Date: 2009-05-19 17:41:31


Invoking bjam with the following arguments:

toolset=msvc-7.1 link=static threading=single

results in the following:

'g++-3' is not recognized as an internal or external command,
operable program or batch file.
'g++-3' is not recognized as an internal or external command,
operable program or batch file.
'g++-4' is not recognized as an internal or external command,
operable program or batch file.
'g++-4' is not recognized as an internal or external command,
operable program or batch file.
boost-test(COMPILE) "math/build/has_long_double_support" :
"libs/math/build/has_long_double_support.cpp"
boost-test(RUN) "serialization/test_polymorphic_polymorphic_text_archive" :
"libs/serialization/test/test_polymorphic.cpp"
"libs/serialization/test/test_polymorphic_A.cpp"
"libs/serialization/test/A.cpp"
boost-test(RUN) "serialization/test_polymorphic_polymorphic_text_warchive" :
"libs/serialization/test/test_polymorphic.cpp"
"libs/serialization/test/test_polymorphic_A.cpp"
"libs/serialization/test/A.cpp"
....
testing.capture-output
..\..\..\bin.v2\libs\serialization\test\test_dll_exported_text_archive.test\msvc-7.1\debug\link-static\threading-multi\test_dll_exported_text_archive.run
====== BEGIN OUTPUT ======
c:\boostrelease\libs\serialization\test\test_tools.hpp(183): unregistered
void cast in function 'int __cdecl main(int,char *[])'
1 error detected.
EXIT STATUS: 1
====== END OUTPUT ======
set
Path=C:\BoostRelease\bin.v2\libs\serialization\build\msvc-7.1\debug\threading-multi;C:\BoostRelease\bin.v2\libs\serialization\test\msvc-7.1\debug\threading-multi;%Path%
"..\..\..\bin.v2\libs\serialization\test\test_dll_exported_text_archive.test\msvc-7.1\debug\link-static\threading-multi\test_dll_exported_text_archive.exe"
>
"..\..\..\bin.v2\libs\serialization\test\test_dll_exported_text_archive.test\msvc-7.1\debug\link-static\threading-multi\test_dll_exported_text_archive.output"
2>&1
set status=%ERRORLEVEL%
echo. >>
"..\..\..\bin.v2\libs\serialization\test\test_dll_exported_text_archive.test\msvc-7.1\debug\link-static\threading-multi\test_dll_exported_text_archive.output"
echo EXIT STATUS: %status% >>
"..\..\..\bin.v2\libs\serialization\test\test_dll_exported_text_archive.test\msvc-7.1\debug\link-static\threading-multi\test_dll_exported_text_archive.output"
if %status% EQU 0 (
copy
"..\..\..\bin.v2\libs\serialization\test\test_dll_exported_text_archive.test\msvc-7.1\debug\link-static\threading-multi\test_dll_exported_text_archive.output"
"..\..\..\bin.v2\libs\serialization\test\test_dll_exported_text_archive.test\msvc-7.1\debug\link-static\threading-multi\test_dll_exported_text_archive.run"
)
set verbose=0
if %status% NEQ 0 (
set verbose=1
)
if %verbose% EQU 1 (
echo ====== BEGIN OUTPUT ======
type
"..\..\..\bin.v2\libs\serialization\test\test_dll_exported_text_archive.test\msvc-7.1\debug\link-static\threading-multi\test_dll_exported_text_archive.output"
echo ====== END OUTPUT ======
)
exit %status%
...failed testing.capture-output
..\..\..\bin.v2\libs\serialization\test\test_dll_exported_text_archive.test\msvc-7.1\debug\link-static\threading-multi\test_dll_exported_text_archive.run...
...failed updating 1 target...
...skipped 1 target...

I have a couple of observations

a) it seems to look for the GCC compiler (listed in user-config.jam) even
though I'm using msvc
b) it substitute mult-threading for single-threading without telling me.

And a question.

I would like to add a "lib" target for a DLL which I want to test with.
Ideally it should be placed in some common spot which is unique according to
build features (single/threaded, static/shared, etc.) How would I do this?

Robert Ramey


Boost-Build list run by bdawes at acm.org, david.abrahams at rcn.com, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk