Boost C++ Libraries 编译安装

Boost C++ Libraries 编译安装

Boost C++ 库(Libraries)是一组扩展C++功能的经过同行评审(Peer-reviewed)且开放源码程序库。大多数的函数为了能够以开放源码、封闭项目的方式运作,而许可于Boost软件许可协议(Boost Software License)之下。许多Boost的开发人员是来自C++标准委员会,而部分的Boost库成为C++的TR1标准之一。

一、Boost库下载

官网:https://www.boost.org/

目录说明:

  • boost: 源码
  • doc: 文档
  • libs: 所有组件的示例/测试/编译代码
  • more: 库作者相关的文档
  • status: 可用于测试的Boost库的各个组件
  • tools: b2等工具

二、Linux下boost编译安装

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会直接安装到系统头文件目录和库文件目录下,可以省略配置环境变量。

三、Windows下boost安装

1、解压下载好的boost压缩包

2、运行VS开发人员命令提示
在这里插入图片描述
3、进入解压后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”。

  • 3
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值