CentOS6.0下编译最新版本boost库
boost库很强大,我用的比较多的库就是boost::shared_ptr、boost::asio等。现在我写的页游服务器中大量使用了boost中的类和方法,但是由于系统本身自带的boost版本比较老,所以需要自己手动编译最新版本的boost。具体步骤如下:(在这里我们以boost1.53版本为例)
(1).到boost官网http://www.boost.org/下载最新版本的boost源码包,具体地址http://sourceforge.net/projects/boost/files/boost/1.53.0/boost_1_53_0.zip/download。
(2).进入到下载好的文件目录中,输入命令:tar xzvf boost_1_53_0.tar.gz 解压到子目录boost_1_53_0中。
(3).进入目录boost_1_53_0中,输入命令:./bootstrap.sh,该命令执行完毕后会得到文件bjam。
(4).输入命令:./bjam -sTOOLS=gcc install 进行编译。如果有不需要的库可以用--without-库名来设定不编译,例如:./bjam -sTOOLS=gcc install --without-python 该命令设定了不编译python子库。
(5).编译完成后,在/usr/local/include/boost目录中就有了新的boost头文件,在/usr/local/lib目录中就会有编译好的.so库文件和.a库文件。
(6).进入/etc/ld.so.conf.d/目录,创建boost.conf文件,并写入/usr/local/lib/然后保存退出。然后输入命令:ldconfig重新加载所有库。执行完成后可以输入:ldconfig -v | grep boost命令来查看最新编译好的库是否已经加载。如果没有加载则可能上面的几个步骤有缺失或者执行出错。
注意:做以上所有操作时,必须要root权限,否则会安装失败。