Need help with using Boost::Serialization on AmD64, Windows, MSVC 8.0
I am building boost using the following command; this is done from the command window of MSVC 2005.
\boost-jam-3.1.16-1-ntx86\bjam --build-dir=c:\boost-build --toolset=msvc --build-type=complete --address-model=64
The intention is to build for amd64 target. Is this the right command? Should toolset be specified as "msvc-8.0_64"?
I am trying to use serialization library but keep getting linker errors like the following:
1>d:\source\ux_a_2\private\frontend\fex\search\searchconfigcontainer.obj : error LNK2019: unresolved external symbol "public: __cdecl boost::archive::basic_binary_oprimitive
Run the x64 Command Prompt for Visual Studio, not the normal one -- that will set the path differently so the 64-bit compiler is found. Build your own bjam rather than using a prebuilt binary by going to tools\jam\src and running build.bat. Then build Boost using your 64-bit bjam by running: tools\jam\src\bin.ntx86_64\bjam.exe --build-dir=c:\boost-build --build-type=complete toolset=msvc address-model=64 Add stage or install to the bjam commandline to have the resulting binaries put somewhere useful.
I did the suggested actions. - I am now able to build boost; I am able to use Serialization library inside a project created through Visual Studio 2005. - However, when I try to use the serialization library inside our custom build environment I still get the same linker error. Is there some bjam log file that I can examine to know what command line switches, etc. are being used for building the serialization library? Thanks. -----Original Message----- From: boost-users-bounces@lists.boost.org [mailto:boost-users-bounces@lists.boost.org] On Behalf Of Adam Merz Sent: Monday, October 20, 2008 5:25 PM To: boost-users@lists.boost.org Subject: Re: [Boost-users] Need help with using Boost::Serialization on AmD64, Windows, MSVC 8.0 Run the x64 Command Prompt for Visual Studio, not the normal one -- that will set the path differently so the 64-bit compiler is found. Build your own bjam rather than using a prebuilt binary by going to tools\jam\src and running build.bat. Then build Boost using your 64-bit bjam by running: tools\jam\src\bin.ntx86_64\bjam.exe --build-dir=c:\boost-build --build-type=complete toolset=msvc address-model=64 Add stage or install to the bjam commandline to have the resulting binaries put somewhere useful. _______________________________________________ Boost-users mailing list Boost-users@lists.boost.org http://lists.boost.org/mailman/listinfo.cgi/boost-users
Sahib Aulakh writes:
Is there some bjam log file that I can examine to know what command line switches, etc. are being used for building the serialization library?
When you invoke bjam, you can pass the argument -d+2 to show commands as they are executed, or you can pass the argument -n to show commands instead of executing them. These will both show arguments being passed to the compiler and linker for building the libraries. tools\jam\src\bin.ntx86_64\bjam.exe --build-type=complete --with-serialization toolset=msvc address-model=64 -n
participants (2)
-
Adam Merz
-
Sahib Aulakh