我以编译安装 boost_1_73_0 版本为例:
首先安装VS2017(其他版本也可以),然后下载boost库的源码安装包:
boost下载地址:Boost Version History
1.选择一个需要的版本,这里我选择的是1.73.0版本

?
2.我们是在Windows环境编译安装可以选择这个zip压缩包
3.下载压缩包后,解压出如下文件,路径不限:
(我解压到E盘的boost_1_73_0文件夹中)

?
?4.打开VS2017的命令行窗口(最好是以管理员身份打开)

5.命令行中切换到你刚刚解压出来的文件夹中,然后执行bootstrap.bat文件,此时会生成b2.exe文件
(我上面是解压到“E:\boost_1_73_0”路径中的)

?6.命令行中执行上一步生成的b2.exe文件,传入安装目标路径(此过程很漫长,可能要十几分钟)
(例如我想安装在? “C:\boost_1_73_0”? 路径中可以这样输入)

注意:此时同时生成的是X86和X64架构,32位和64位的,静态库。
如有特殊生成需要还能附加以下参数控制编译安装结果:
--toolset=msvc? 编译器类别,可以是gcc,或者是msvc
--target-os=Windows? 目标操作系统,可以是Windows,Linux
--variant=release? 生成类型,可以是 debug(-gd-)或者release (-)
--threadapi=win32? 线程API的实现,可以是win32或者pthread,在windows上编译就用win32
--link=static? 链接库类型,可以是静态的static,也可以是shared,对应windows上的库就是.lib或者是dll
--runtime-link=static ?动态还是静态链接C/C++运行时库。同样有shared (-)和static (-s-)两种方式,这样runtime-link和link可以产生4种组合方式,可以根据需要选择编译.
--prefix=DIR? 安装路径
--user-config= 用户自定义配置文件,在cross compile的时候可以用来配置编译工具链
--address-model=32? 生成32位还是64位库文件
--architecture=x86 cpu架构,一般台式机位x86,嵌入式平台位arm
编译安装64位的Release版的静态链接库可以执行下面的指令:(-mt-s-)
.\b2.exe variant=release threading=multi threadapi=win32 link=static runtime-link=static --prefix=E:\boost_1_77_0 address-model=64 architecture=x86 install -j8
-j8参数代表8线程同时编译,可以提高编译安装的速度。
?7.编译安装boost库完成,在我输入的安装目标路径中会产生include和lib两个文件夹
<include>?包含文件
<lib>? 静态库文件

?
8.安装完成。保留第7步得到的两个文件夹(include和lib)即可,其他都没用了可以删掉了,除出你留着可能会编译成其他架构,例如改成arm架构,改成动态库等你就需要重新编译。
?
|