Ubuntu 13.04编译boost1.54
因为要用基于GCC4.8.1的boost最新版本的库,默认apt-get install 安装的是boost1.53, 并且基于GCC4.7.3,不是我想要的。所以决定下载源代码自己编译。
下载(后面的路径可能会变,具体参考boost网站链接)
wget -O boost_1_54_0.tar.bz2 http://downloads.sourceforge.net/project/boost/boost/1.54.0/boost_1_54_0.tar.bz2?r=http%3A%2F%2Fwww.boost.org%2Fusers%2Fhistory%2Fversion_1_54_0.html&ts=1375162670&use_mirror=jaist
解压:
tar --bzip2 -xf ./boost_1_54_0.tar.bz2
开始编译,全部编译耗时太多,所以我仅选择我需要的库:
先用下面的命令查看有多少库可以编译:
./bootstrap.sh --show-libraries Building Boost.Build engine with toolset gcc... tools/build/v2/engine/bin.linuxx86_64/b2 The following Boost libraries have portions that require a separate build and installation step. Any library not listed here can be used by including the headers only. The Boost libraries requiring separate building and installation are: - atomic - chrono - context - coroutine - date_time - exception - filesystem - graph - graph_parallel - iostreams - locale - log - math - mpi - program_options - python - random - regex - serialization - signals - system - test - thread - timer - wave
然后就编译我要的库:
./bootstrap.sh --with-libraries=system,filesystem,log,thread Building Boost.Build engine with toolset gcc... tools/build/v2/engine/bin.linuxx86_64/b2 Unicode/ICU support for Boost.Regex?... not found. Generating Boost.Build configuration in project-config.jam... Bootstrapping is done. To build, run: ./b2 To adjust configuration, edit 'project-config.jam'. Further information: - Command line help: ./b2 --help - Getting started guide: http://www.boost.org/more/getting_started/unix-variants.html - Boost.Build documentation: http://www.boost.org/boost-build2/doc/html/index.html
然后运行下面的命令完成编译。
./b2
耐心等待。不过因为不是编译所有库。时间会少很多。以后需要再来编译。很快看到结果:
The Boost C++ Libraries were successfully built! The following directory should be added to compiler include paths: /usr/src/boost_1_54_0 The following directory should be added to linker library paths: /usr/src/boost_1_54_0/stage/lib
忘记安装了。再运行./b2 install 命令,默认安装在
/usr/local/lib目录下
头文件在
/usr/local/include/boost目录下