id summary reporter owner description type status milestone component version severity resolution keywords cc
4901 boost_serialization link error under msvc 9.0 & 8.0 anonymous Robert Ramey "I`m trying to compile small program using boost_serialization under msvc. I have three simple cases:
{{{
1) FAILED!
Jamroot:
using msvc ;
use-project boost : ""C:\\Boost\\boost_1_45_0"" ;
exe serial : serial.cpp /boost/serialization//boost_serialization ;
Serial.exe.rsp:
""bin\msvc-9.0\debug\threading-multi\serial.obj""
""C:\Boost\boost_1_45_0\bin.v2\libs\serialization\build\msvc-9.0\debug\threading-multi\boost_serialization-vc90-mt-gd-1_45.lib""
All full paths are exist!
msvc.link.dll C:\Boost\boost_1_45_0\bin.v2\libs\serialization\build\msvc-9.0\debug\threading-multi\boost_serialization-vc90-mt-gd-1_45.dll
Creating library C:\Boost\boost_1_45_0\bin.v2\libs\serialization\build\msvc-9.0\debug\threading-multi\boost_serialization-vc90-mt-gd-1_45.lib and objec
t C:\Boost\boost_1_45_0\bin.v2\libs\serialization\build\msvc-9.0\debug\threading-multi\boost_serialization-vc90-mt-gd-1_45.exp
msvc.manifest.dll C:\Boost\boost_1_45_0\bin.v2\libs\serialization\build\msvc-9.0\debug\threading-multi\boost_serialization-vc90-mt-gd-1_45.dll
msvc.link bin\msvc-9.0\debug\threading-multi\serial.exe
LINK : fatal error LNK1104: cannot open file 'libboost_serialization-vc90-mt-gd-1_45.lib'
call ""c:\Program Files\Microsoft Visual Studio 9.0\VC\vcvarsall.bat"" x86 >nul
link /NOLOGO /INCREMENTAL:NO /DEBUG /MACHINE:X86 /subsystem:console /out:""bin\msvc-9.0\debug\threading-multi\serial.exe"" @""bin\msvc-9.0\debug\threading-
multi\serial.exe.rsp""
if %ERRORLEVEL% NEQ 0 EXIT %ERRORLEVEL%
...failed msvc.link bin\msvc-9.0\debug\threading-multi\serial.exe bin\msvc-9.0\debug\threading-multi\serial.pdb...
...failed updating 2 targets...
...updated 34 targets...
2) FAILED!
Jamroot:
using msvc ;
use-project boost : ""C:\\Boost\\boost_1_45_0"" ;
exe serial : serial.cpp /boost/serialization//boost_serialization :
static static ;
All paths from serial.exe.rsp are exist too.
...
compile-c-c++ C:\Boost\boost_1_45_0\bin.v2\libs\serialization\build\msvc-9.0\debug\link-static\runtime-link-static\xml_archive_exception.obj
xml_archive_exception.cpp
compile-c-c++ C:\Boost\boost_1_45_0\bin.v2\libs\serialization\build\msvc-9.0\debug\link-static\runtime-link-static\shared_ptr_helper.obj
shared_ptr_helper.cpp
msvc.archive C:\Boost\boost_1_45_0\bin.v2\libs\serialization\build\msvc-9.0\debug\link-static\runtime-link-static\libboost_serialization-vc90-sgd-1_45.lib
stl_port.obj : warning LNK4221: no public symbols found; archive member will be inaccessible
msvc.link bin\msvc-9.0\debug\link-static\runtime-link-static\serial.exe
LINK : fatal error LNK1104: cannot open file 'libboost_serialization-vc90-mt-sgd-1_45.lib'
call ""c:\Program Files\Microsoft Visual Studio 9.0\VC\vcvarsall.bat"" x86 >nul
link /NOLOGO /INCREMENTAL:NO /DEBUG /MACHINE:X86 /subsystem:console /out:""bin\msvc-9.0\debug\link-static\runtime-link-static\serial.exe"" @""bin\msvc-9.0\
debug\link-static\runtime-link-static\serial.exe.rsp""
if %ERRORLEVEL% NEQ 0 EXIT %ERRORLEVEL%
...failed msvc.link bin\msvc-9.0\debug\link-static\runtime-link-static\serial.exe bin\msvc-9.0\debug\link-static\runtime-link-static\serial.pdb...
...failed updating 2 targets...
...updated 32 targets...
3) WORKS!
using msvc ;
use-project boost : ""C:\\Boost\\boost_1_45_0"" ;
exe serial : serial.cpp /boost/serialization//boost_serialization
link ;
}}}
So where is problem?
Is only one possible configuration for building serialization library under msvc?
I can link with other libraries, boost_program_options for instance, but not with boost_serialization.
{{{
using msvc ;
use-project boost : ""C:\\Boost\\boost_1_45_0"" ;
exe main : main.cpp /boost/program_options//boost_program_options ;
}}}
" Bugs closed To Be Determined serialization Boost 1.45.0 Problem wontfix