boost 库的编译与链接

来源:互联网 发布:星星知我心原唱是谁 编辑:程序博客网 时间:2024/06/13 12:04
最近在看项目框架的底层代码的过程中 发现了大量的代码都是使用boost进行开发 ,boost库由c++标准委员会组织的成员所发起的,如果之前有使用过stl的人来说 那么boost库的学习会相对简多。
boost库中有部分库我们是可以直接使用的 不需要进行编译 而有些库的使用是需要编译的 那么我们如何知道那些库需要编译 那些库不需要编译 以及编译成静态库还是动态库 库的版本 库所在的目录等等
boost库为我们提供了两个内置的编译工具 bjam.exe 和bz.exe  运行bootstrap.bat 文件来产生这两个工具 bjam相当于以前用于boost编译的工具 推荐使用bz.exe来编译
bz --help 用于查看bz命令的详细信息
bz --show-libraries 查看需要编译的库
bz --toolset=msvc-9.0 stage 编译器以及版本 生成库默认所在目录
bz --stagedir=dirname 修改生成库所在的目录
       variant = debug| release
--with-XXX 需要编译的库
link=static|share

boost库名称规范
boost_xxx(库名称)_vc90(编译器版本)-mt(多线程方式)-x.x.x(boost的版本).lib|dll|a|so
boost库项目
头文件的包含与库的链接

boost库的不足
日志文件(项目中使用的是logc4plus)
数据库访问支持(封装了oci)

xml文件传输(protobuf)