简体   繁体   中英

How do I build boost with Visual Studio 2008 when I have multiple Visual Studio versions installed?

I know how to build boost with the latest visual studio on my machine ( this question, for example )

However, I need to build the libs for Visual Studio 2008 (vc9)

I tried using toolset=vc9 but I get problems/no success.

How can I build the libs for vc9?

After I run boostrap I try running

b2 toolset=vc9

but the output is:

C:/Development/boost 50/boost_1_50_0/boost_1_50_0/tools/build/v2/build\\toolset.jam:39: in toolset.using rule vc9.init unknown in module toolset

C:/Development/boost 50/boost_1_50_0/boost_1_50_0/tools/build/v2\\build-system.jam:481: in process-explicit-toolset-requests

C:/Development/boost 50/boost_1_50_0/boost_1_50_0/tools/build/v2\\build-system.jam:562: in load

C:\\Development\\boost 50\\boost_1_50_0\\boost_1_50_0\\tools\\build\\v2/kernel\\modules.jam:283: in import

C:\\Development\\boost 50\\boost_1_50_0\\boost_1_50_0\\tools\\build\\v2/kernel/bootstrap.jam:142: in boost-build

C:\\Development\\boost 50\\boost_1_50_0\\boost_1_50_0\\boost-build.jam:17: in module scope

toolset=msvc-9.0

I have VS2008-Pro and VS2010-Express installed. The default ran with VS2010. Setting toolset=msvc-9.0 caused the build to run with VS2008. Using Boost 1.51.0.

You'll need to dig into the How-To-Build-Boost documentation, and in particular see this ; but the part you need to specify a particular MSVC version is pointed to here . That suggests creating a user-config.jam , which probably would work, but I created a project-config.jam file instead.

I seem to be able to do this by running the top-level boost build (or meta build) script from different VC command lines. For example to build with VC2012, start a command line with vc 2012 vars. And for 2010, do the same. The automatically generated build scripts seem to do the right thing.

I am sure there are ways to do this by editing the build scripts myself or by setting the toolset, but I had no success with that.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM