boostvs2017 编译 boost 1.68.0 的过程说明

    技术2025-07-16  7

    一、准备

    下载 boost 1.68.0 源代码,点我。

    二、选择命令行工具

    强调:编译时使用 vs2017 开发者命令行工具,

    若编译生成 x86 的库,就使用 x86 Native Tools Command Prompt for VS 2017 命令行工具;

    若编译生成 x64 的库,就使用 x64 Native Tools Command Prompt for VS 2017 命令行工具。

    三、指令

    1、bootstrap.bat

    生成 b2.exebjam.exeproject-config.jam

    2、b2.exe   install   --toolset=msvc-14.1   --prefix="D:\boost_1_68_0\bin\v141"   threading=multi   --build-type=complete   --build-dir="D:\boost_1_68_0\build"   address-model=64

    (1)stage

    可选 install,选 stage 只生成库(静态库和动态库),install 还包含 include 目录。

    (2)--toolset

    设置编译器,如果用 VC 则写 msvc,用 MinGW 就写 gcc 。

    应为这里使用的是 vs2017 平台工具集,所以这里写法是 msvc-14.1.

    拓展:

    VS IDE 版本平台工具集Visual Studio 2019v142Visual Studio 2017v141Visual Studio 2015v140Visual Studio 2013v120Visual Studio 2012V110Visual Studio 2010V100Visual Studio 2008V90Visual Studio 2005V80Visual Studio 2003V71Visual Studio 2002V70Visual Studio 6.0V60

    (3)--build-dir=”folder path”

    存放编译时产生的临时文件路径。

    (4)--prefix=” folder path”

    存放编译后库文件的路径,默认是stage。

    (5)variant=debug|release       

    决定编译什么版本。(Debug or Release)

    (6)link=static|shared           

    决定使用静态库还是动态库。

    (7)threading=single|multi       

    决定使用单线程还是多线程库。

    (8)runtime-link=static|shared   

    决定是静态还是动态链接C/C++标准库。

    (10)--build-type=complete

    编译所有版本。

    (11)address-model=64

    如果没有这个属性的话,会默认生成 32 位的平台库,加入这个选项才能生成 64 位的DLL。如果运行在 VS32 位的命令行下需要添加”architecture=x86”。

     

    参考链接:https://jingyan.baidu.com/article/67508eb47cbb479cca1ce4b2.html

     

    (SAW:Game Over!)

    Processed: 0.011, SQL: 9