编译模板:Boost


1.Boost-1.55 Linux-x86_64 / GNU编译器,串行版
 1) 运行配置命令。
./bootstrap.sh --prefix=/home/MyID/Tool/Boost/Install

2) 编译:
./b2 install

有些程序需要带-mt后缀的库文件,编译时加上threading=multi

2.Boost-1.55 Linux-x86_64 / GNU编译器,并行版
 1) 运行配置命令。
./bootstrap.sh --with-libraries=serialization,mpi --prefix=/home/MyID/Tool/Boost/Install

对于一些老版本boost(如1.55),打开bootstrap.log,若发现错误信息“warning: implicit declaration of function 'file_query' [-Wimplicit-function-declaration]”,需要修改tools/build/v2/engine/modules/path.c,加上一行
#include "../filesys.h"
然后重新运行以上配置命令。

2) 编辑生成的文件project-config.jam,在开头加入
using mpi ;

using mpi : mpicxx ;
mpicxx是实际所用的mpic++编译器名。注意行尾分号。

然后加载mpi环境变量。

3) 编译并安装:
./b2 --layout=tagged link=static,shared install

其它常用编译参数有:
4核编译:-j4
指定编译器:--toolset=gcc-4.9.1或--toolset=intel-*