博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
WINDOWS 下安装boost
阅读量:4649 次
发布时间:2019-06-09

本文共 1835 字,大约阅读时间需要 6 分钟。

boost 库是一个可移植、提供源代码的C++库,作为标准库的后备,是C++标准化进程的开发引擎之一。 Boost库由C++标准委员会库工作组成员发起,其中 有些内容有望成为下一代C++标准库内容。在C++社区中影响甚大,是不折不扣的“准”标准库。Boost由于其对跨平台的强调,对标准C++的强调,与 编写平台无关。大部分boost库功能的使用只需包括相应头文件即可,少数(如正则表达式库,文件系统库等)需要链接库。但Boost中也有很多是实验性 质的东西,在实际的开发中实用需要谨慎。

方法/步骤

  1. 1

    当前boost最新版本为1.55,下载地址:

    http://sourceforge.net/projects/boost/files/boost/1.55.0/

    或者从官网(www.boost.org)下载最新版的BOOST源码,如图所示.

    经过测试,2012和2013步骤相同,这里以2012为例。

  2. 2

    1、打开VS2012 Native Tools Command,可以从开始--Microsoft Visual Studio 2012找到:

  3. 3

    将下载的 boost_1_55_0.zip 解压在F盘,例如 F:\boost_1_53_0

    执行bootstrap.bat,如图绿框所示:

  4. 4

    编译,可以简单的使用b2 install,也可以指定存放目录,或者寻找网上其它帮助文章。

         查看帮助可以输入:.\b2 --help

         比如要开启多线程编译:b2 install threading=multi

         设置生成的是debug或者release

         备注:如果是使用VS2013,请指定输出库类型,否则会缺一个lib文件:

         "无法打开文件 libboost_thread_vc120_mt_sgd-1_55.lib"。

          在2013时,我是使用下面的语句进行编译:

         

    // 如果要获取动态库:

    bjam install stage --toolset=msvc-12.0 --stagedir="C:\Boost\boost_vc_120" link=shared runtime-link=shared threading=multi debug release  

    // 如果是要获取静态库:

    bjam install stage --toolset=msvc-12.0 --stagedir="C:\Boost\boost_vc_120" link=static runtime-link=static threading=multi debug release  

        其中,注意修改--toolset=msvc-12.0,将12.0修改成对应的vs版本号,12.0是VS2013的版本号。

        目标地址也要修改成你所需的。

        注意,不要漏了install,它会帮你把头文件集合到一个文件夹中。

          编译过程有一个复制过程,编译需要的时间比较长,本次编译过程中,会在C盘根目录下生成一个boost文件夹,然后包含include和lib文件夹,这就是我们将要使用的头文件和库文件。

  5. 5

    编译完了我们就使用编译在C盘中的文件。我将它们拷贝到了F盘,

    下图三个文件分别是:   1) 将要使用的boost头文件和库文件。   2) 解压出的boost文件夹,就是使用这个文件夹来进行 1 -- 3步骤的。   3)BoostTest 测试工程。

    需要简单的配置两个地方:

    这里使用绝对路径,也可以配置环境来使用。

  6. 6

    然后建立了一个工程测试。 在BoostTest中新建一个控制台应用程序,下图三个文件分别是:

       1) 将要使用的boost头文件和库文件。   2) 解压出的boost文件夹,就是使用这个文件夹来进行 1 -- 3步骤的。   3)BoostTest 测试工程。

    #include <iostream>  

    #include <boost/thread/thread.hpp>  

    void hello()  

    {  

    std::cout << "Hello world, I'm a thread!" << std::endl;  

    }  

    int main()  

    {  

    boost::thread thrd(&hello);  

    thrd.join();  

    }  

    编译测试工程,  并运行,开始boost之旅吧。

    END

 

转载于:https://www.cnblogs.com/zhoulunhao/p/4999333.html

你可能感兴趣的文章
安装配置GitLab
查看>>
使用 Nuget安装DLL
查看>>
18 Surprises From Reading jQuery’s Source Code
查看>>
004 方法反射
查看>>
根据 url 下载图片到本地
查看>>
node vue 开发环境部署时,外部访问页面出现: Invalid Host header 服务器域名访问出现的问题...
查看>>
逻辑运算符——逻辑与&&、逻辑或||
查看>>
系统管理-网络管理
查看>>
memmove和memcpy
查看>>
MongoDB整合Spring 详细讲解(含代码) .
查看>>
Java基础之IO
查看>>
asp.net中的App_GlobalResources和App_LocalResources使用
查看>>
集合类
查看>>
多列转1列 SqlServer 实现oracle10g的 wmsys.wm_concat()--for xml path('')
查看>>
Entity Framework应用:使用Code First模式管理视图
查看>>
【机器学习】贝叶斯公式
查看>>
445端口打开方法
查看>>
生成器
查看>>
Pycharm 创建 Django admin 用户名和密码
查看>>
python2.6升级2.7导致yum无法使用 No module named yum
查看>>