boost在linux下进行安装

1 ,下载boost安装包并解压缩
到 http://www.boost.org/ 下载boost的安装包,以boost_1_61_0.tar.gz为例
下载完成后进行解压缩:tar zxvf boost_1_61_0.tar.gz
2, 设置编译器和所选库
2.1进入解压的目录

cd boost_1_61_0

2.2然后运行bootstrap.sh脚本并设置相关参数:

   ./bootstrap.sh --with-libraries=all --with-toolset=gcc 

–with-libraries指定编译哪些boost库,all的话就是全部编译,只想编译部分库的话就把库的名称写上,之间用 , 号分隔即可,可指定的库有以下几种:

   库名	                                             说明
atomic	
chrono	
context	
coroutine	
date_time	
exception	
filesystem	
graph	                                         图组件和算法
graph_parallel	
iostreams	
locale	
log	
math	
mpi	                                           用模板实现的元编程框架
program_options	
python	                                       把C++类和函数映射到Python之中
random	
regex	                                       正则表达式库
serialization	
signals	
system	
test	
thread	                                         可移植的C++多线程库
timer	
wave

–with-toolset指定编译时使用哪种编译器,Linux下使用gcc即可,如果系统中安装了多个版本的gcc,在这里可以指定gcc的版本,比如–with-toolset=gcc-4.4

注意:
如果是需要支持mpi,在执行了./bootstrap.sh后,需要修改文件project-config.jam ,添加

using mpi ; 

当然,首先保证已经安装了mpich2或openmpi。然后在第2行执行:

./bjam --with-mpi

3,编译boost

./b2(或bjam) toolset=gcc  等十分钟左右

4, 安装boost

./b2 (或bjam)install --prefix= /home/boost/boostSDK

–prefix=/home/boost/boostSDK用来指定boost的安装目录,不加此参数的话默认的头文件在/usr/local/include/boost目录下,库文件在/usr/local/lib/目录下。然后做一下的两步:
1.在/usr/include/下生成一个boost库的include文件夹连接:

ln -s /home/boost/boostSDK/include/boost   /usr/include/boost                                                                    

2.在/usr/lib/ 下生成所有boost编译出的lib库文件的对应连接 切换到stage目录下,执行

  find $PWD/lib/*.* -type f -exec ln -s {} /usr/lib/ \;
       (普通用户执行: sudo find $PWD/lib/*.* -type f -exec ln -s {} /usr/lib/ \;)

5,刷新链接库

ldconfig

6,在使用时要注意家链接库
例如

g++ main.cpp -g -o main -lboost_thread

可以参考http://www.programgo.com/article/13472803091/

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值