windows如何编译各种版本boost库

news/2024/11/28 21:39:39/

环境

    系统:windows11boost版本: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

http://www.ppmy.cn/news/46288.html

相关文章

ei会议被检索的时间一般多久,中文期刊论文有doi吗

目录 ei会议被检索的时间一般多久 中文期刊论文有doi吗 中文期刊论文没有oi怎么办

CentOS常用命令50个含示例

以下是 CentOS 下常用命令及其详细说明: rsync:文件同步工具,支持本地和远程同步。例如:将本地目录 /home/user 同步到远程主机的 /backup 目录:rsync -av /home/user/ userremote:/backup/。iptables:防火…

pc端和移动端复制粘贴问题

选择了HTML5的一个属性contenteditable。处理了复制内容插入的样式问题。 加上了paste"optimizePasteEvent"事件的监听来进行处理。 html输入框部分&#xff1a; <div ref"textarea" class"textarea" id"textarea" contenteditab…

Sentinel服务

1&#xff0c;安装Sentinel 2&#xff0c;引入依赖 spring-cloud-starter-alibaba-sentinel 3&#xff0c;自定义资源&#xff0c;添加注解&#xff1a; SentinelResource(value "getByCode",blockHandler "handleException") 4&#xff0c;配置文件中添…

最优化方法Python计算:函数向量和函数矩阵

函数 f ( x ) , x ∈ R n f(\boldsymbol{x}),\boldsymbol{x}\in\text{ℝ}^n f(x),x∈Rn的梯度 ∇ f ( x ) ( ∂ f ∂ x 1 ∂ f ∂ x 2 ⋮ ∂ f ∂ x n ) \nabla f(\boldsymbol{x})\begin{pmatrix}\frac{\partial f}{\partial x_1}\\\frac{\partial f}{\partial x_2}\\\vdots\…

ThingsBoard开源物联网平台智慧农业实例快速部署教程(Ubuntu、CentOS适用)

ThingsBoard部署教程文档 文章目录 ThingsBoard部署教程文档1. JDK环境安装2. 安装thingsBoard2.1 ThingsBoard软件包安装2.2 PostgreSQL安装2.3 PostgreSQL初始化配置 3. 修改ThingsBord的配置4. 运行安装脚本测试5. 访问测试6. 导入一个仪表盘库6.1 导出仪表盘并导入自己的项…

【Linux】CentOS7.6 升级 gcc/g++

CentOS 7.6 升级 gcc/g的方法&#xff0c;不一定适用于其他linux系统 1.查看版本 g -v gcc -v当前查看版本&#xff0c;发现是4.8.5&#xff0c;这已经是2015年的旧版本了&#xff0c;对c11的支持不是很完善&#xff0c;为了方便学习和编写新版本的代码&#xff0c;升级一下还…

【TypeScript】TypeScript基础语法快速入门

快速入门 0、TypeScript简介 TypeScript是JavaScript的超集。它对JS进行了扩展&#xff0c;向JS中引入了类型的概念&#xff0c;并添加了许多新的特性。TS代码需要通过编译器编译为JS&#xff0c;然后再交由JS解析器执行。TS完全兼容JS&#xff0c;换言之&#xff0c;任何的J…