分享

Microsoft Visual Studio 2008 下 Boost 1.4.5 的安...

 londonKu 2012-03-28

Boost为C++的“准”标准模板库,包含有许多有用的类库,是深入研究和充分利用C++的“给力”武库。

例如:Boost下的uBLAS库,就将著名的基本线性代数子程序BLAS(采用Fortran语言编写,见BLAS官网介绍)C++化了,它支持dense matrix、sparse matrix等等,具有很高的运算效率(这方面还有表现更为优异的采用模板库思想编写的开源程序Eigen。不过作为个人研究之用,uBLAS已够用)。

为了免除“重新发明轮子”之虞,在编写基于C++的有限元程序时就可直接引用uBLAS库进行矩阵运算,不用自己费神再去写丑陋的子程序了。

Boost里面还有很多有意思的库,如正则表达式regex、并行计算mpi、包含高质量伪随机数发生器random的math数学库、用于语言扩展的python库等等,我们可以充分挖掘之。广泛吸纳和利用已有的C++模板库,正是C++之父B.S.反复向我们强调的忠告。


闲话少说,Microsoft Visual Studio 2008 下 Boost1.4.5 的安装过程网上有介绍,结合个人经验,调整并总结如下:

1. 在Boost官网(www.)上下载Boost1.4.5安装文件压缩包,将Boost1.4.5解压至某个目录,如E:\Boost。

2. 运行Visual Studio 2008 命令提示(在开始/所有程序/Microsoft Visual Studio 2008/Visual Studio Tools下),进入E:\Boost。
   运行 bootstrap.bat 批处理命令,编译出 bjam.exe 程序(在E:\Boost下)。

3. 用记事本打开E:\Boost\tools\build\v2下的user-config.jam:
   将 "# using msvc : 9.0 ;" 前的 # 注释符号去掉,表示安装Boost1.4.5时使用Visual Studio 2008 (即msvc : 9.0)。
  
4. 回到 Visual Studio 2008 命令提示。
   执行 bjam --help 可以查看bjam的参数;
   执行 bjam --show-libraries 可以查看Boost包含哪些库。
 
   以下开始正式安装,运行:
   bjam  --without-mpi  --toolset=msvc-9.0  --build-type=complete  --stagedir="E:\Boost\_I_am_here"  --stage

   注:
   (a)--without-mpi 表示不用编译 mpi 并行计算库(用不用视自己需要而定,这里仅用来示例boost可自定义安装)。
   (b)--stagedir="E:\Boost\_I_am_here" 表示编译生成的库文件的目录,_I_am_here是自己取的名字,可任意。


   然后是漫长的编译过程(可能要等待一两个小时,视机器配置而定)。。。。。。
  
   Build完毕之后提示:
   The Boost C++ Libraries were successfully build!
   The following directory should be added to compiler include paths: E:\Boost
   The following directory should be added to linker library paths: E:\Boost\E:\Boost\_I_am_here\lib

5. 按照以上提示,设置Microsoft Visual Studio 2008的IDE环境:
    打开VS2008,工具 → 选项 → 项目和解决方案 → VC++ 目录 → 包含文件,新建:E:\Boost
                                                                                        库文件,  新建:E:\Boost\_I_am_here\lib

6. 设置本项目属性:
    配制属性 → 常规 → 将字符集改为:未设置
    配制属性 → C++  → 代码生成 → 将运行时库改为:多线程调试(/MTd)

7. OK!

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多