Boost库的编译

https://blog.csdn.net/bagboy_taobao_com/article/details/65449403

Boost的编译

一. 编译环境

Win7 sp1 64位旗舰版 + VS2008 sp1 + boost 1.63

二. 下载boost

Version 1.63.0

Download boost_1_63_0.7z (Boost C++ Libraries)

三. 生成boost的编译工具b2.exe和bjam.exe

3.1 解压boost_1_63_0.7z到C:\boost_1_63_0  (路径可任意选择,最好不要包含中文和空格);

3.2 使用VC2008的命令行工具并cd到C:\boost_1_63_0

3.3 输入bootstrap.bat

即可生成b2.exe和bjam.exe

 

四. 编译boost

4.1. 编译命令

我这里是全编译:

// 编译Debug版

b2.exe install --toolset=msvc-9.0 --prefix="vc9" link=static runtime-link=shared threading=multi debug

// 编译Release版

b2.exe install--toolset=msvc-9.0 --prefix="vc9" link=static runtime-link=shared threading=multi release

// Debug版和Release版都编译

b2.exe install--toolset=msvc-9.0 --prefix="vc9" link=static runtime-link=shared threading=multi debug release

4.2. b2.exe/bjam.exe的命令参数解析

1). stage/install

stage :表示只生成库(dll/lib);

install : 除了生成库((dll/lib)),还会拷贝boost的头文件到指定的include目录;(我试过了,要拷贝一万多个头文件,很慢)

2). toolset

指定编译器, 可选的如borland, gcc, msvc(VC6), msvc-12.0(VS2013), msvc-14.0(VS2015)等.例如上面命令的--toolset=msvc-9.0

3). without/with

选择不编译/编译哪些库.因为我这里是全编译,所以不写.

4). stagedir/prefix

stage时使用stagedir, install时使用prefix,表示编译生成文件的路径.我这里是当前目录下的v9目录,也就是C:\boost_1_63_0\vc9

5). build-dir

编译生成的中间文件的路径. 这里没用到,默认就在根目录(X:\boost_X_XX_X\boost)下,目录名为bin.v2.

6). link

生成动态链接库/静态链接库.生成动态链接库需使用shared方式,生成静态链接库需使用static方式.我这里是link=static

7). runtime-link

动态/静态链接C/C++运行时库.同样有shared和static两种方式,这样runtime-link和link一共可以产生4种组合方式.我这里是runtime-link=shared

8). threading

单/多线程编译.一般都写多线程程序,当然要指定multi方式了;如果需要编写单线程程序,那么还需要编译单线程库,可以使用single方式.我这里是threading=multi

9). debug/release

编译debug/release版本.我这里是debug release

五. 配置boost在VC上的路径

你懂的. 

参考:

Windows下如何编译使用boost - FongLuo - C++博客
C++ Boost库的编译及使用 - 简书

新浪博客

bjam 参数 - 快乐的天空 - C++博客

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值