用msvc 14.1(VS2017 RC)build立提升
我正在尝试用最新的msvc 14.1和VS2017 RC来提升1.63。 所以我做了我通常所做的一切,打开了Development Cmd,然后运行bootstrap.bat并运行命令
b2 -link=static -threading=multi
出于某种原因,我得到了这些错误:
E:/Coding/SDKs/boost_1_63_0/tools/build/src/tools\msvc.jam:834: in generate-setup-cmd *** argument error * rule maybe-rewrite-setup ( toolset : setup-script : setup-options : version : rewrite-setup ? ) * called with: ( msvc : : : default : ) * missing argument setup-script E:/Coding/SDKs/boost_1_63_0/tools/build/src/tools\msvc.jam:746:see definition of rule 'maybe-rewrite-setup' being called E:/Coding/SDKs/boost_1_63_0/tools/build/src/tools\msvc.jam:1076: in configure-really E:/Coding/SDKs/boost_1_63_0/tools/build/src/tools\msvc.jam:201: in configure E:/Coding/SDKs/boost_1_63_0/tools/build/src/tools\msvc.jam:153: in msvc.init E:/Coding/SDKs/boost_1_63_0/tools/build/src/build\toolset.jam:43: in toolset.using E:/Coding/SDKs/boost_1_63_0/tools/build/src/build\project.jam:1052: in using project-config.jam:3: in modules.load E:/Coding/SDKs/boost_1_63_0/tools/build/src\build-system.jam:249: in load-config E:/Coding/SDKs/boost_1_63_0/tools/build/src\build-system.jam:412: in load-configuration-files E:/Coding/SDKs/boost_1_63_0/tools/build/src\build-system.jam:524: in load E:\Coding\SDKs\boost_1_63_0\tools\build\src/kernel\modules.jam:295: in import E:\Coding\SDKs\boost_1_63_0\tools\build\src/kernel/bootstrap.jam:139: in boost-build E:\Coding\SDKs\boost_1_63_0\boost-build.jam:17: in module scope
我不喜欢助推,所以也许你们中的一个可以给我一个提示
基于KindDragons和CPlusPlus OOA和D答案,我编译了Boost 1.63。 对于64位。 运行“x64本机工具命令提示符VS 2017”命令提示符下:
1)运行: bootstrap.bat
2)打开project-config.jam
。 这是我的:
import option ; using msvc : 14.0 : "c:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.10.25017\bin\HostX64\x64\cl.exe"; option.set keep-going : false ;
部分:14.10.25017不断更新您的Windows SDK的更新。 所以相应地更新它。
3)运行b2 toolset=msvc-14.0 address-model=64
升压1.63不完全支持VS2017,但你可以欺骗它findVC ++ 2017编译器:
- 在boost目录下运行
bootstrap.bat
- 更新project-config.jam以包含:
using msvc : 14.0 : <path to x86 or x64 cl.exe>
。 应该是像"c:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.10.24911\bin\HostX64\x64\cl.exe"
- 从Windows“开始”菜单运行“开发人员命令提示符VS 2016 RC”,以从使用x86 vcvars或x64 vcvarsconfiguration的shell进行自动升级。
- 在该命令提示符下运行
b2 toolset=msvc-14.0
。 对于x64构build,请将address-model=64
添加到b2命令行。
更新: 升压1.64应该支持VS2017
从开始菜单运行“x86本机工具命令提示符VS 2017”或“x64本机工具命令提示符VS 2017”,比在命令提示符下运行b2
:
32位: b2 toolset=msvc-14.1 --build-dir=.x86 --stagedir=stage_x86
64位: b2 toolset=msvc-14.1 address-model=64 --build-dir=.x64 --stagedir=stage_x64
添加link=shared
来构build共享库
我创build了一个批处理脚本,在以下的github repo中构build32位和64位二进制文件: https : //github.com/manuelgustavo/boost_build
秘密在于使用Visual Studio 2017的开发者命令提示符。 它根据需要设置所有的环境variables。
然后从它,你可以执行这样的事情:
为32位…
b2.exe –toolset = msvc-14.0 architecture = x86 address-model = 32 –stagedir =“。\ stage32”threading = multi –build-type = complete stage
或64位…
b2.exe –toolset = msvc-14.0 architecture = x86 address-model = 64 –stagedir =“。\ stage64”threading = multi –build-type = complete stage
或者,如果您愿意,只需访问https://github.com/manuelgustavo/boost_build并按照步骤操作即可。;