windows如何编译各种版本boost库

文章详细介绍了如何使用bjam工具在Windows11环境下,针对Boost1.70版本,用VisualStudio2019编译器进行编译,包括设置如--without-python来排除特定库,--toolset指定编译器版本,以及--stagedir设定输出路径等参数。同时,列举了不同编译配置(如静态/动态链接,debug/release模式)下生成的库文件名称及其规则。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

环境

    系统:windows11
    boost版本:boost-1.70
    编译器版本:Visual Studio 2019

1. 参数分析

–without:选择不编译某个库

    例如不编译python模块
    --without-python

–toolset:指定编译工具

    例如指定vs2019
    --toolset=msvc-14.2

–stagedir:指定生成库所在位置,默认位置stage/lib

    --stagedir=stage142

2. 生成库名称规则分析

  • libboost_filesystem-vc142-mt-s-x64-1_70.lib
    静态库,静态链接,release模式,多线程模式, 64位库
bjam  stage --toolset=msvc-14.2 --stagedir="D:\boost\boost_1_70_0\stage142" --without-python architecture=x86 address-model=64 link=static threading=multi runtime-link=static --build-type=complete release
  • libboost_filesystem-vc142-mt-sgd-x64-1_70.lib
    静态库,静态链接,debug模式,多线程模式, 64位库
bjam  stage --toolset=msvc-14.2 --stagedir="D:\boost\boost_1_70_0\stage142" --without-python architecture=x86 address-model=64 link=static threading=multi runtime-link=static --build-type=complete debug 
  • libboost_filesystem-vc142-mt-x64-1_70.lib
    静态库,动态链接,release模式,多线程模式, 64位库
bjam  stage --toolset=msvc-14.2 --stagedir="D:\boost\boost_1_70_0\stage142" --without-python architecture=x86 address-model=64 link=static threading=multi runtime-link=shared --build-type=complete release 
  • libboost_filesystem-vc142-mt-gb-x64-1_70.lib
    静态库,动态链接,debug模式,多线程模式, 64位库
bjam  stage --toolset=msvc-14.2 --stagedir="D:\boost\boost_1_70_0\stage142" --without-python architecture=x86 address-model=64 link=static threading=multi runtime-link=shared --build-type=complete debug 
  • libboost_filesystem-vc142-mt-gb-x64-1_70.dll
    动态库,动态链接,debug模式,多线程模式,64位库
bjam  stage --toolset=msvc-14.2 --stagedir="D:\boost\boost_1_70_0\stage142" --without-python architecture=x86 address-model=64 link=shared threading=multi runtime-link=shared --build-type=complete debug 
  • libboost_filesystem-vc142-mt-x64-1_70.dll
    动态库,动态链接,debug模式,多线程模式,64位库
bjam  stage --toolset=msvc-14.2 --stagedir="D:\boost\boost_1_70_0\stage142" --without-python architecture=x86 address-model=64 link=shared threading=multi runtime-link=shared --build-type=complete release 
  • 注释
    1. vc142 是编译器版本,Visual Studio 2019
    2. mt 表述threading多线程,是因为 threading=multi 选项
    3. gb 表示debug模式,release没这个
    4. x64 是因为加了 address-model=64
    5. 1_70 是boost 1.70版本
    6. dll 是因为 link=shared
    7. lib 是因为加了link=static
    8. s 是因为加了静态链接runtime-link=static, runtime-link=shared 没这个
库名称库类型链接方式编译方式编译器版本线程库位数
libboost_filesystem-vc142-mt-s-x64-1_70.liblink=staticruntime-link=staticrelease--toolset=msvc-14.2threading=multiaddress-model=64
libboost_filesystem-vc142-mt-sgd-x64-1_70.liblink=staticruntime-link=staticdebug--toolset=msvc-14.2threading=multiaddress-model=64
libboost_filesystem-vc142-mt-x64-1_70.liblink=staticruntime-link=sharedrelease--toolset=msvc-14.2threading=multiaddress-model=64
libboost_filesystem-vc142-mt-gd-x64-1_70.liblink=staticruntime-link=shareddebug--toolset=msvc-14.2threading=multiaddress-model=64
libboost_filesystem-vc142-mt-gd-x64-1_70.dlllink=sharedruntime-link=shareddebug--toolset=msvc-14.2threading=multiaddress-model=64
libboost_filesystem-vc142-mt-x64-1_70.dlllink=sharedruntime-link=sharedrelease--toolset=msvc-14.2threading=multiaddress-model=64
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

telllong

你的鼓励是我创作最大的动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值