VS2019 配置 boost::thread 记录

boost大多数库的配置并不复杂,只需要解压,VS配置即可。

但某些库(比如多线程常用的boost::thread)需要额外的编译步骤。我们一步一步来。

一、普通库配置

  1.1 下载:

    https://www.boost.org/users/download/

    我下载的版本是 1.73.0

  1.2 解压到某路径:

    我的路径是:E:\Program Files (x86)\boost_1_73_0

  1.3 VS路径包含

    a. 在“解决方案资源管理器”窗口,右键项目名,我的是“BoostTest”,打开“属性窗口”

    b. 选择“配置属性”:VC++目录

    c. 在 包含目录 中 添加路径:E:\Program Files (x86)\boost_1_73_0;

    d. 在 库目录 中 添加路径:E:\Program Files (x86)\boost_1_73_0\libs;

  1.4 试运行

    https://blog.csdn.net/xucongyoushan/article/details/85321754

----------------------------------------------------------------------------------------------------------------------------------

二、需要编译的库(以boost::thread)为例

  2.0:一 中的各步骤

  2.1:cmd模式进入E:\Program Files (x86)\boost_1_73_0\, 运行bootstrap.bat文件

  2.2:(如果boost_1_73_0目下同时存在bjam.exe和boost-build.jam, 则此步省略。

     若不存在,将 E:\Program Files (x86)\boost_1_73_0\tools\build 路径下的 bjam.exe 拷贝一份到 E:\Program Files (x86)\boost_1_73_0\

  2.3:  回到正在 E:\Program Files (x86)\boost_1_73_0\ 下的cmd窗口,输入如下命令:

    bjam stage --toolset=msvc-14.2 --without-python --stagedir="c:\Boost" link=static runtime-link=shared runtime-link=static threading=multi debug release

    其中msvc- 后面的数字请参考附录;其他地方想要理解并定制编译的请参考

https://blog.csdn.net/qq_39187538/article/details/92767707

  2.4:此时C:\Boost\lib 应存在,且密密麻麻全是lib.

  2.5:  VS项目库目录添加C:\Boost\lib,操作同1.3d.

  2.6: 试运行:

#include <list>
#include <iostream>

#include <boost/assign.hpp>
#include <boost/foreach.hpp>
#include <boost/thread.hpp>

void hello()
{
    std::cout << "Hello world, I'm a thread!" << std::endl;
}

int main(int argc, char* argv[])
{
    boost::thread thrd(&hello);
    thrd.join();
    
    return 0;
}

--------------------------------------------------------------------------------------------------------------------------------

msvc与vs版本对应号

MSC    1.0   _MSC_VER == 100
MSC    2.0   _MSC_VER == 200
MSC    3.0   _MSC_VER == 300
MSC    4.0   _MSC_VER == 400
MSC    5.0   _MSC_VER == 500
MSC    6.0   _MSC_VER == 600
MSC    7.0   _MSC_VER == 700
MSVC++ 1.0   _MSC_VER == 800
MSVC++ 2.0   _MSC_VER == 900
MSVC++ 4.0   _MSC_VER == 1000 (Developer Studio 4.0)
MSVC++ 4.2   _MSC_VER == 1020 (Developer Studio 4.2)
MSVC++ 5.0   _MSC_VER == 1100 (Visual Studio 97 version 5.0)
MSVC++ 6.0   _MSC_VER == 1200 (Visual Studio 6.0 version 6.0)
MSVC++ 7.0   _MSC_VER == 1300 (Visual Studio .NET 2002 version 7.0)
MSVC++ 7.1   _MSC_VER == 1310 (Visual Studio .NET 2003 version 7.1)
MSVC++ 8.0   _MSC_VER == 1400 (Visual Studio 2005 version 8.0)
MSVC++ 9.0   _MSC_VER == 1500 (Visual Studio 2008 version 9.0)
MSVC++ 10.0  _MSC_VER == 1600 (Visual Studio 2010 version 10.0)
MSVC++ 11.0  _MSC_VER == 1700 (Visual Studio 2012 version 11.0)
MSVC++ 12.0  _MSC_VER == 1800 (Visual Studio 2013 version 12.0)
MSVC++ 14.0  _MSC_VER == 1900 (Visual Studio 2015 version 14.0)
MSVC++ 14.1  _MSC_VER == 1910 (Visual Studio 2017 version 15.0)
MSVC++ 14.11 _MSC_VER == 1911 (Visual Studio 2017 version 15.3)
MSVC++ 14.12 _MSC_VER == 1912 (Visual Studio 2017 version 15.5)
MSVC++ 14.13 _MSC_VER == 1913 (Visual Studio 2017 version 15.6)
MSVC++ 14.14 _MSC_VER == 1914 (Visual Studio 2017 version 15.7)
MSVC++ 14.15 _MSC_VER == 1915 (Visual Studio 2017 version 15.8)
MSVC++ 14.16 _MSC_VER == 1916 (Visual Studio 2017 version 15.9)
MSVC++ 14.2  _MSC_VER == 1920 (Visual Studio 2019 Version 16.0)
MSVC++ 14.21 _MSC_VER == 1921 (Visual Studio 2019 Version 16.1)
MSVC++ 14.22 _MSC_VER == 1922 (Visual Studio 2019 Version 16.2)

猜你喜欢

转载自www.cnblogs.com/GroundhogPaul/p/13387855.html