Boost C++ 库(Libraries)是一组扩展C++功能的经过同行评审(Peer-reviewed)且开放源码程序库。大多数的函数为了能够以开放源码、封闭项目的方式运作,而许可于Boost软件许可协议(Boost Software License)之下。许多Boost的开发人员是来自C++标准委员会,而部分的Boost库成为C++的TR1标准之一。
官网:https://www.boost.org/
目录说明:
1、解压下载好的boost压缩包
tar -zxvf boost_1_73_0.tar.gz
2、进入解压后boost目录
cd boost_1_73_0
3、运行bootstrap.sh生成boost的编译工具b2
./bootstrap.sh --with-libraries=all --with-toolset=gcc
参数说明:
(1)–with-libraries
指定编译哪些boost库,all的话就是全部编译,只想编译部分库的话就把库的名称写上,之间用 , 号分隔即可。
(2)–with-toolset
指定编译时使用哪种编译器,Linux下使用gcc即可,如果系统中安装了多个版本的gcc,在这里可以指定gcc的版本,比如–with-toolset=gcc-4.4。
4、编译
./b2 toolset=gcc
5、安装
./b2 install --prefix=/usr
(1)–prefix
用来指定boost的安装目录,不加此参数的话默认将头文件安装在/usr/local/include/boost目录下,库文件在/usr/local/lib/目录下。这里把安装目录指定为–prefix=/usr则boost会直接安装到系统头文件目录和库文件目录下,可以省略配置环境变量。
1、解压下载好的boost压缩包
cd boost\boost_1_73_0
4、运行bootstrap.bat生成boost编译工具
bootstrap.bat
在boost_1_73_0文件夹下生成b2.exe和bjam.exe
5、在目录boost_1_73_0下有一个项目配置文件project-config.jam,用记事本或其他文本编辑工具打开,做如下修改
其中第二行的目录是VS的安装目录中cl.exe的位置。
6、编译安装
b2.exe stage --toolset=msvc-14.0 address-model=64 --stagedir="C:\boost\boost_1_73_0\boost"threading=multi --build-type=complete
参数说明:
(1)–toolset:设置编译器,如果用VC,设msvc, 用MinGW就设gcc。
(2)stage:可选install,选stage只生成库(静态库和动态库),install还包含include目录。
(3)–build-dir:编译的临时文件存放位置。
(4)–stagedir:存放编译后库文件的路径,默认是stage。
(5)–build-type=complete:编译所有版本
(6)variant=debug|release 决定编译什么版本(Debug or Release?)
(7)link=static|shared 决定使用静态库还是动态库,一般默认静态。
(8)threading=single|multi 决定使用单线程还是多线程库。
(9)runtime-link=static|shared 决定是静态还是动态链接C/C++标准库。
(10)address-mode:address-model=64,没有这个属性,默认生成32位库,加入这个选项才能生成64位的DLL。如果运行在VS32位的命令行下需要添加” architecture=x86”。