1.http://www.boost.org/ 下载boost库。
2.解压到 D:\ProgramFiles\boost
3.环境配变量配置
VS2017更加注重跨平台性,安装文件较多,VC有三个版本,分别是arm、Hostx64、Hostx86,我们使用Hostx64。
注意,需要使用cl.exe. 默认安装时,编译器cl.exe并不在环境变量中,需要配置。
测试环境变量:
运行输入cmd,输入cl,若显示:‘cl‘ 不是内部或外部命令,说明没有环境变量。
配置环境变量:
选择Path编辑-添加cl的路径:
D:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\VC\Tools\MSVC\14.11.25503\bin\Hostx64\x64
4.开始编译
以管理员身份运行VS2017开发人员命令提示,英文名称x64 Native Tools Command Prompt for VS 2017
进入目录
cd D:\ProgramFiles\boost\boost_1_65_1
运行bootstrap.bat,生成b2.exe,bjam.exe和project-config.jam。
很多资料说要编辑project-config.jam文件,如下
import option ;
using msvc :14.1:"D:/Program Files (x86)/Microsoft Visual Studio/2017/Enterprise/VC/Tools/MSVC/14.11.25503/bin/Hostx64/x64/cl.exe";
option.set keep-going : false ;
编译没有成功。
不修改此文件,保持不变,编译成功。
5.生成
b2.exe install --toolset=msvc-14.1 --prefix="D:/ProgramFiles/boost/lib" --without-python threading=multi --build- type=complete address-model=64
具体介绍:
--toolset:设置编译器,如果用VC,设msvc, 用MinGW就设gcc。
stage:可选install,选stage只生成库(静态库和动态库),install还包含include目录,其实,可以直接用我们下载下来的BOOST包里的boost目录,这个目录和install生成的include目录内容基本一样。
--build-dir=”[temporary folder name”:编译的临时文件存放位置。
--stagedir=” stage folder name]”:存放编译后库文件的路径,默认是stage。
--build-type=complete:编译所有版本
{
variant=debug|release 决定编译什么版本(Debug or Release?)
link=static|shared 决定使用静态库还是动态库。
threading=single|multi 决定使用单线程还是多线程库。
runtime-link=static|shared 决定是静态还是动态链接C/C++标准库。
}
link:是动态库还是静态库,static | shared,一般默认静态。
address-mode:address-model=64,如果没有这个属性的话,会默认生成32位的平台库,加入这个选项才能生成64位的DLL。如果运行在VS32位的命令行下需要添加” architecture=x86”,由于我们使用x64 Native Tools Command Prompt for VS 2017没有x86与x64之间的矛盾,所以未设置。
这个过程大致需要半个小时:生成的这个文件夹就是库文件和动态链接所在。中间文件build可以直接删除。