一、准备
下载 boost 1.68.0 源代码,点我。
二、选择命令行工具
强调:编译时使用 vs2017 开发者命令行工具,
若编译生成 x86 的库,就使用 x86 Native Tools Command Prompt for VS 2017 命令行工具;
若编译生成 x64 的库,就使用 x64 Native Tools Command Prompt for VS 2017 命令行工具。
三、指令
1、bootstrap.bat
生成 b2.exe,bjam.exe 和 project-config.jam 。
2、b2.exe install --toolset=msvc-14.1 --prefix="D:\boost_1_68_0\bin\v141" threading=multi --build-type=complete --build-dir="D:\boost_1_68_0\build" address-model=64
(1)stage
可选 install,选 stage 只生成库(静态库和动态库),install 还包含 include 目录。
(2)--toolset
设置编译器,如果用 VC 则写 msvc,用 MinGW 就写 gcc 。
应为这里使用的是 vs2017 平台工具集,所以这里写法是 msvc-14.1.
拓展:
VS IDE 版本 | 平台工具集 |
Visual Studio 2019 | v142 |
Visual Studio 2017 | v141 |
Visual Studio 2015 | v140 |
Visual Studio 2013 | v120 |
Visual Studio 2012 | V110 |
Visual Studio 2010 | V100 |
Visual Studio 2008 | V90 |
Visual Studio 2005 | V80 |
Visual Studio 2003 | V71 |
Visual Studio 2002 | V70 |
Visual Studio 6.0 | V60 |
(3)--build-dir=”folder path”
存放编译时产生的临时文件路径。
(4)--prefix=” folder path”
存放编译后库文件的路径,默认是stage。
(5)variant=debug|release
决定编译什么版本。(Debug or Release)
(6)link=static|shared
决定使用静态库还是动态库。
(7)threading=single|multi
决定使用单线程还是多线程库。
(8)runtime-link=static|shared
决定是静态还是动态链接C/C++标准库。
(10)--build-type=complete
编译所有版本。
(11)address-model=64
如果没有这个属性的话,会默认生成 32 位的平台库,加入这个选项才能生成 64 位的DLL。如果运行在 VS32 位的命令行下需要添加”architecture=x86”。
参考链接:https://jingyan.baidu.com/article/67508eb47cbb479cca1ce4b2.html
(SAW:Game Over!)