首先下载得到boost的最新版(目前最新版是1.63)

下载地址:
 

也可以从这里直接下载

http://download.csdn.net/detail/zengraoli/9815337

下载完成后解压出来

编译32位的boost库

 

打开vs的32位命令行工具

 

进入到boost源代码文件夹中

 

进入到boost源代码文件夹中

 

运行bootstrap.bat

 

执行如下操作,对boost进行编译

(msvc版本14.0对应的是vs2015,--stagedir是指定编译后存放的目录,文章附录有vs版本对应编号)

bjam stage --toolset=msvc-14.0 --without-graph --without-graph_parallel --stagedir="D:\boost\boost_1_63_0\bin\vc14" link=static runtime-link=shared runtime-link=static threading=multi debug release

 

这样得到的是就是32位的boot库

编译64位的boost库

打开vs的64位命令行工具

 
 

进入到boost源代码文件夹中

 

运行bootstrap.bat

 

执行如下操作,对boost进行编译

(msvc版本14.0对应的是vs2015,--stagedir是指定编译后存放的目录)

bjam stage --toolset=msvc-14.0 architecture=x86 address-model=64 --without-graph --without-graph_parallel --stagedir="D:\boost\boost_1_63_0\bin\vc14-x64" link=static runtime-link=shared runtime-link=static threading=multi debug release

这样得到的是就是64位的boot库

开始使用boost

 

设置测试的程序为64位

 

设置附加的包含路径(下载之后解压的boost文件夹):

 

设定库路径:

 
 

然后建立第一个boost项目,代码如下:

  1.  
    #include "boost/thread.hpp"
  2.  
    #include "iostream"
  3.  
    using namespace std;
  4.  
     
  5.  
    void mythread()
  6.  
    {
  7.  
    cout << " hello,thread! " << endl;
  8.  
    }
  9.  
     
  10.  
    int _tmain(int argc, _TCHAR* argv[])
  11.  
    {
  12.  
    boost::function<void()> f(mythread);
  13.  
    boost::thread t(f);
  14.  
    t.join();
  15.  
    cout << " thread is over! " << endl;
  16.  
     
  17.  
     
  18.  
    return 0;
  19.  
    }
得到输出
 

附录

附上版本对应编号

  1.  
    VC6
  2.  
    VC7(2003)
  3.  
    VC8(2005)
  4.  
    VC9(2008)
  5.  
    VC10(2010)
  6.  
    VC11(2012)
  7.  
    VC12(2013)
  8.  
     

https://blog.csdn.net/zengraoli/article/details/70187556

一个boost线程池的例子

附带一个boost使用线程池的例子

http://blog.csdn.net/zengraoli/article/details/70187693

 
 
 
下面文章是vs2015编译, 将140换为141,则可以编译给vs2017用.
编译64位:
先打开vs2017 64位环境的cmd环境, 进入boost源目录, 运行bootstrap.bat,然后运行下面编译命令,
stagedir用来指定库存放的位置
bjam stage --toolset=msvc-14.1 architecture=x86 address-model=64 --without-graph --without-graph_parallel --stagedir="c:\boost\boost_1_64_0\bin\vc141-x64" link=static runtime-link=shared runtime-link=static threading=multi debug release

编译32位:

先打开vs2017 x86环境的cmd环境, 进入boost源目录, 运行bootstrap.bat,然后运行下面编译命令,

bjam stage --toolset=msvc-14.1 --without-graph --without-graph_parallel --stagedir="c:\boost\boost_1_64_0\bin\vc141-x86" link=static runtime-link=shared runtime-link=static threading=multi debug release

要等好一会儿的.

 
https://blog.csdn.net/rocklee/article/details/72885587

编译并使用boost库(win7+boost1.63+vs2015+32位or 64位),超详细,boost于vs2017下编译(64/32bit)的更多相关文章

  1. 编译 boost 库(win7+boost1.60+vs2008)

    参见:http://blog.csdn.net/u013074465/article/details/42532527 下载boost安装包 https://sourceforge.net/proje ...

  2. boost::VS2017下编译和配置boost库

    环境: win10  vs2017  v141 1.下载  boost_1_70_0.zip. 2.以管理员方式打开 3. bootstrap.bat 4.编译64位库 b2.exe stage -- ...

  3. 成功实现在VS2017下编译含<pthread.h>的代码:

    VS2017配置使用#<pthread.h> https://blog.csdn.net/cry1994/article/details/79115394(原来SystemWow64里面存 ...

  4. ollvm在VS2017下编译

    0x1,首先介绍一下编译环境配置 1.UE4.25 2.vs2017(15.9),注:2019编译总是出现错误 3.cmake3.18.5,cmake的作用是为ollvm源码编译成适合于在vs2017 ...

  5. VS2017下编译iconv

    从http://www.gnu.org/software/libiconv/ 下载 libiconv-1.11.1, 这是最后一个支持MSVC编译的版本. 打开 Visual Studio 2017 ...

  6. windows上编译boost库

    要用xx库,编译boost时就指定--with-xx.例如: # 下载并解压boost_1.58 # 进入boost_1.58目录 bjam.exe toolset=msvc-14.0 --build ...

  7. boost库在windows下的编译和使用

    因为跨平台的原因,现在要使用到boost库,boost库非常大,现在处于摸索阶段. 首先来说boost库在window下的安装和使用. 一.下载 首先从boost官方主页http://www.boos ...

  8. Linux下boost库的编译、安装详解

    下载boost源码 boost下载地址 解压到一个目录 tar -zxvf boost_1_66_0.tar.gz 编译boost库 进入boost_1_66_0目录中 cd boost_1_66_0 ...

  9. boost库的安装,使用,介绍,库分类

    1)首先去官网下载boost源码安装包:http://www.boost.org/ 选择下载对应的boost源码包.本次下载使用的是 boost_1_60_0.tar.gz (2)解压文件:tar - ...

随机推荐

  1. [Hyperapp] Render Text with JSX in Hyperapp

    Hyperapp is an ultra lightweight (1kb), minimal, functional, JavaScript library for building UIs. It ...

  2. Application Loader提交ipa文件出现ERROR ITMS-90022问题解决方式

    话说在提交app到AppStore时出现了一些问题.网上找了一些资料,但不并具体.因此我做了一个总结,方便我以后遇到时可查询. 也希望能帮助遇到这个问题的提供解决方式. ERROR ITMS-9002 ...

  3. kqueue演示样例

    网络server通常都使用epoll进行异步IO处理,而开发人员通常使用mac,为了方便开发.我把自己的handy库移植到了mac平台上. 移植过程中,网上竟然没有搜到kqueue的使用样例.让我吃惊 ...

  4. po层和vo层中po和vo是什么意思

    POJO(Plain Ordinary Java Object)简单的Java对象,实际就是普通JavaBeans,是为了避免和EJB混淆所创造的简称. pojo 是Plain Old Java Ob ...

  5. linux 磁盘分区,主分区,扩展分区,逻辑分区以sata接口为例

     以sata接口(依据linux内核检測其顺序 sda,sdb...)为例, 1, 硬盘的限制,最多仅仅能设置4个分区(主分区+扩展分区),路径例如以下, /dev/sda1  /dev/sda2 ...

  6. 110个经常使用Oracle函数总结

    1. ASCII 返回与指定的字符相应的十进制数; SQL> select ascii(A) A,ascii(a) a,ascii(0) zero,ascii( ) space from dua ...

  7. 神经网络预测mnist时候如果不归一化,则准确率仅仅10%下文作者svm也遇到了。

    转自:http://blog.csdn.net/jeryjeryjery/article/details/72649320 这两天用Python来实现手写数字识别,刚开始用原始数据进行训练,结果预测结 ...

  8. FastJSON杂项

    //通过TypeReference解决泛型的问题 List<Integer> rst = JSON.parseObject(v,new TypeReference<List<I ...

  9. navigator.clipboard 浏览器原生剪贴板

    浏览器原生剪贴板 navigator.clipboard 写入 navigator.clipboard.writeText navigator.clipboard.writeText('Linr Te ...

  10. Java获取环境变量和系统属性

    Java获取服务器环境变量和JVM系统变量    当程序中需要使用与操作系统相关的变量(例如:文件分隔符.换行符)时,Java提供了System类的静态方法getenv()和getProperty() ...