即日起在codingBlog上分享您的技术经验即可获得积分,积分可兑换现金哦。

boost-库编译和运用-001

编程语言 tencupofkaiwater 19℃ 0评论
本文目录
[隐藏]

1.
  • 1. 下载boost

从boost官网( http://www.boost.org )上下载最新的boost版本,现在最新是1.64版本,解压到自定义目录(我解压到了E盘E:\boost_1_64_0\,最终的目录结构是E:\boost_1_64_0\boost_1_64_0)

2.
  • 2. 编译安装

在E:\boost_1_64_0\boost_1_64_0目录下,有一个bootstrap.bat文件,直接双击运行。就会在同目录生成b2.exe;bjam.exe两个文件。

点击开始->所有程序->“Microsoft Visual Studio 2010”,指向“Visual Studio tools(工具)”,然后单击“Visual Studio 2010 command prompt(命令提示)”
使用cd切换到E:\boost_1_64_0\boost_1_64_0目录。

 然后输入如下的代码:bjam install --toolset=msvc-10.0 architecture=x86 address-model=64 --build-type=complete --prefix="E:\boost_1_64_0\boost_1_64_0\bin
\vc10_x64"  link=static runtime-link=shared threading=multi debug release

解释一下命令的意思:


  1. bjam: 编译工具;
  2. install/stage:stage表示只生成库文件(DLL和Lib),install还会生成包含头文件的include目录;
  3. toolset:表示编译器工具,我安装的是VS2010,所以是msvc-10(如果你是VS2005,可以使用msvc-8.0 VS2008是msvc-9.0);
  4. architecture:表示架构,也就是你的CPU架构x86;
  5. address-model:表示地址长度,32/64
  6. build-type: complete表示全部编译;
  7. prefix:但是使用install时,表示安装目录,当使用stage时,是:–stage=”xxx”,表示输入库路径;
  8. link:表示生成动态/静态链接库,动态链接库是shared,静态链接库是static,一般都会编译成静态库,因为给出程序的时候打包boost的库会非常庞大;
  9. runtime-link:shared/static, 表示动态/静态链接C/C++运行时库(C/C++ Runtime),我们选择了动态链接;
  10. threading:表示单/多线程编译,一般我们的程序都会用到多线程,所以选择了multi;
  11. debug release:表示生成debug和release库;
  12. without/with:表示不需要编译/需要编译哪些库,一些自己不用的库可以无需编译;

2.1.

3.
  • 3. 配置VS2010

新建工程后需要把Boost库包含到工程中,右键选择属性,在VC++目录的“包含目录”中添加Boost的根目录,在“库目录”添加刚刚编译生成的位置再加上路径lib。

#include
#include
 
void hello({
        std::cout << “Hello
world, I’m a thread!”
 << std::endl;
}
 
int main(int argccharargv[]{
        boost::threadthrd(&hello);
        thrd.join();
        return0;
}

转载请注明:CodingBlog » boost-库编译和运用-001

喜欢 (0)or分享 (0)
发表我的评论
取消评论

*

表情