我正在尝试将我们的C ++项目从VS2005升级到VS2010,到目前为止一切似乎都很好,除了我需要在VS2010中重新编译我们的Boost库(v1.39)(即使用vc100 - 我们的版本是vc80)。我不(在这个阶段)想要升级Boost,因为我宁愿首先完成VS2005到VS2010的升级而不同时进行Boost升级。
我遇到的问题是Boost 1.39附带bjam,我们的版本不支持/了解msvc10.0。我试过这个:
C:\ libs \ boost_1_39_0> bjam toolset = msvc-10.0 --build-type = complete stage
但是,我明白了:
C:/ libs / boost_1_39_0 / tools / build / v2 / tools \ msvc.jam:733:在configure-really中
* 参数错误
* rule path.make(native)
*调用:()
*缺少参数本机
C:/ libs / boost_1_39_0 / tools / build / v2 / util \ path.jam:44:看到规则'make'的定义被称为
C:/ libs / boost_1_39_0 / tools / build / v2 / tools \ msvc.jam:184:in configure
C:/ libs / boost_1_39_0 / tools / build / v2 / tools \ msvc.jam:137:在msvc.init中
C:/ libs / boost_1_39_0 / tools / build / v2 / build \ toolset.jam:38:in toolset.using
C:/ libs / boost_1_39_0 / tools / build / v2 \ build-system.jam:465:in process-explicit-toolset-requests
C:/ libs / boost_1_39_0 / tools / build / v2 \ build-system.jam:545:在加载中
C:\ libs \ boost_1_39_0 \ tools \ build \ v2 / kernel \ modules.jam:283:导入中
C:\ libs \ boost_1_39_0 \ tools \ build \ v2 \ kernel \ bootstrap.jam:138:在boost-build中
C:\ libs \ boost_1_39_0 \ boost-build.jam:16:在模块范围内
C:\库\ boost_1_39_0>
当我查看msvc.jam时,它似乎不支持msvc-10.0(毫不奇怪,因为我怀疑当Boost处于1.39时vc10.0已经出来了。)
所以做了一些研究,发现也许我需要b2而不是bjam,但我很少有编译Boost的经验(之前只使用过预编译的lib),所以我想问一下是否有可能得到b2这将与Boost 1.39一起使用?或者是否可以使bjam与vc10.0一起使用?
基本上,我只需要尽可能简单地使用vc-10.0(VS2010)编译Boost 1.39!我将非常感谢任何能告诉我如何做到这一点的人!
提前谢谢........:)
答案 0 :(得分:3)
您可以使用更新版本的bjam来构建boost 1.39。
cd
中到新解压缩的boost文件夹的根目录bootstrap.bat
。这应该在该文件夹中构建bjam.exe
cd
到boost 1.39的根文件夹,然后将bjam.exe
复制到bjam toolset=msvc-10.0 --build-type=complete stage