VS2015编译使用Boost库遇到的问题及正确编译使用教程

article/2025/10/5 10:42:33

目录

背景:

一、VS2015+Boost1.79.0时出现的问题情况

1、前言

2、问题发现

3、排查找原因

二、VS2015+Boost1.69.0正确编译使用

1、执行bat文件

2、运行exe文件,编译lib库

3、VS2015包含库使用


背景:

        本机电脑window10上已经安装过VS2010、VS2022后,由于之前想要研究boost库这方面的知识。就在官网上下载过1.79.0版本的boost库,并且编译并在VS2022上正确使用过。

        但由于boost可视化工具Graphical Debugging版本的限制,VS2022上无法安装可视化插件,一直没能继续创作。不过日前基于需要,在本机上又下载安装了VS2015。基于此就可以在vs2015上编译使用boost库了。

一、VS2015+Boost1.79.0时出现的问题情况

1、前言

        在已有VS2015软件和Boost1.79.0库的基础上,直接重新编译适合VS2015的boost库。直接双击b2.exe会直接索引vs2022环境生成14.3版本的lib库。

        一般来说直接包含boost的头文件就可以使用boost的基础功能,但是要使用到boost比较复杂的组件就需要加上lib库,我们用boost::geometry功能就需要对应的lib库了;一般在解压库包后顺便就编译一下lib库,避免后期使用到组件之后出现各种问题而不知所措。这里重新使用命令行编译生成14.0的库:

b2.exe install --toolset=msvc-14.0 --build-type=complete --prefix=D:\build link=static runtime-link=shared runtime-link=static threading=multi debug release

msvc-14.0指的是vs2015编译器,--prefix后面的路径是生成.h和.lib的存放路径

2、问题发现

        编译完boost静态库后,在vs2015上新建工程,并且引入boost库(boost库的调用步骤详见Windows下Boost库的安装与使用),然后写入测试案例,进行生成编译,却一直报如下的错误:

3、排查找原因

        首先我们知道“Boost.Geometry in Boost 1.73 deprecates support for the C++03 and will require C++14 from Boost 1.75 onwards”自Boost1.73后需要匹配C++14版本的编译平台了。

然后查看vs2015对应c++版本可参考:

vs不同版本支持的c++版本和PlatformToolset,及在vs中切换c++版本 - 知乎 (zhihu.com)

        发现C++14:vs2017就可以完全支持,vs2015基本支持,vs2013部分支持。

        虽说vs2015应该能够支持的,可不管怎么编译boost1.79库都是报以上错误。那么只能是boost库不兼容,需要降boost库版本了,下载1.73.0之前版本的boost库包均可。

二、VS2015+Boost1.69.0正确编译使用

        Boost1.69.0类似1.79版本的下载编译过程,这里简单介绍。

1、执行bat文件

        在官网老版本中下载boost1.69.0版本,解压,双击bootstrap.bat(或者,在cmd框中执行bat文件)执行过程中先出现‘Building Boost.Build engine’需要等待一小会执行完成就会生成b2.exe和bjam.exe。

注:cmd框最好在‘开始’打开‘VS2015 的 MSBuild 命令提示符’

2、运行exe文件,编译lib库

        在VS2015 的 MSBuild 命令提示符框下,转到解压文件夹路径下,然后执行以下命令进行编译:

bjam stage --toolset=msvc-14.0 architecture=x86 address-model=32 --without-graph --without-graph_parallel --stagedir="(生成的路径)" link=static runtime-link=shared runtime-link=static threading=multi debug release

编译过程需要半个小时左右吧,时间快慢由个人笔记本性能决定。

注:这里编译方式多样,但效果均可达到。例如:直接双击b2.exe会生成stage文件夹,里面就有lib文件夹;用上面命令行,注意‘(生成的路径)’换成自己需要的文件夹名;还可以将bjam换成b2也是可以的;b2 install …等等也ok。

3、VS2015包含库使用

        在vs2015上新建工程,并且引入boost库(boost库的调用步骤详见Windows下Boost库的安装与使用),然后写入测试案例,进行生成编译。

        再在 C/C++->常规->附加包含目录 中加上包含目录路径;在 链接器->常规->附加库目录 中加上库目录路径。


http://chatgpt.dhexx.cn/article/4gDITdHE.shtml

相关文章

VS2015 tfs的使用教程

本人文章陆续转向本人微信公账号发布 公众号:搬砖码农SmallNNN,期望您要是搬砖码农,一起学习探讨。 由于最新新换了工作环境,点击打开链接,看了这个文章的人大家都知道, 上家用的是git,这个有的教程了&am…

vs2015使用教程

一、启动 visual studio 2015 稍等片刻,你就会看到这个界面: 点击菜单:”文件”-“新建”-“项目”,会出现这个窗口: 选择左侧的”Visual C”下面的“win32”之后,选择右侧的”win32控制台应用程序”&#…

【VSCode常用插件】Path Autocomplete(@路径提示的插件)

前言❤️ 在路上,见识世界;在途中,认清自己 ❤️ 【VSCode常用插件】Path Autocomplete(路径提示的插件) 一、安装教程二、设置教程(1)在vscode设置打开 settings.json(2&#xff09…

vscode最常用插件

常用插件: 如果喜欢中文就安装中文,如果不喜欢就自动忽略. 1、chinese 2、Open-In-Browser 这个是必须安装的 打开浏览器看效果使用的 快捷键是altb 3、Prettier Prettier 是目前 Web 开发中最受欢迎的代码格式化程序。安装了这个插件,它…

vscode常用插件 - Path Autocomplete

1. Path Autocomplete 作用: 在vscode中使用提示路劲配置 打开vscode设置 搜索 settings.json 添加以下代码 // 导入文件时是否携带文件的拓展名"path-autocomplete.extensionOnImport": true,// 配置的路径提示"path-autocomplete.pathMappings": {"…

VSCode 常用插件推荐

VS Code提供了非常丰富的插件功能,根据你的需要,安装对应的插件可以大大提高开发效率。 完成前端开发,常见插件介绍: 目录 1、Chinese (Simplified) Language Pack 2、Code Spell Checker 3、HTML CSS Support 4、JavaScrip…

前端VSCode常用插件安装和使用

本篇文章先介绍下常见的插件~~~~ VSCode常用的插件 vscode之所以被称为宇宙第一神器,其中丰富的插件功不可没,安装起来超级简单,给我们开发带来了极大的便捷。 注意,新手学习期间,不建议安装形形色色的插件&#xff…

VSCode常用插件和快捷键总结

码字不易,转载请附原链,搬砖繁忙回复不及时见谅。 快捷键 切换打开的项目窗口:Ctrl W打开最近的项目:Ctrl R切换打开的文件:Ctrl 数字键 / Ctrl tab左右切换打开的文件:Command alt 左/右format格式…

VSCode 工具常用插件

1、Debugger for Chrome 方便运行代码,浏览器打开 2、 GitLens — Git supercharged 鼠标放到代码行上可以显示,改行的上一次修改记录 3、Git History git log 4、 Auto Close Tag 自动完成闭合标签 5、 Auto Rename Tag 修改了前面的开始标签&#…

Vscode常用插件及设置(前端版,实时更新ing

1.open in borwser: 写完代码后鼠标右击将代码在浏览器中运行 2.Chinese 汉化Vscode 3.vscode-icons html、css、js、less图标显示 4.Live Server 代码块写完后使用Live Server,每次修改代码CtrlS后浏览器无需再刷新即可跟着变化, 与…

VSCode常用插件汇总

这篇博客主要是我使用vscode过程中的插件汇总,使用了这么长时间,总想有个总结,也方便日后查看,这里我将我使用的插件分为基础、框架、工具三个类型。 官网地址 VSCode插件官网地址,里面有很多的插件可以使用。 基础插…

【整理总结】VSCode常用插件和好用配置(小白必看)

本篇文章给大家总结分享一些VSCode常用插件和好用配置(超详细),希望可以给刚入坑前端的小伙伴一些帮助。本文很长,如果能认真看完,你一定会有所收获。 一、VSCode常用插件推荐 工欲善其事,必先利其器。本文介绍一些前端…

VScode 常用必备插件

Visual Studio Code(简称“VS Code”)在前端开发的过程中必不可少,vscode作为代码编辑器,开源、免费、颜值高。更关键的是,丰富的插件,能够提高开发效率,你值得拥有。我们团队中大部分人都在用&…

【vscode】vscode常用插件介绍

1、Angular Snippets(angular片段) 这个扩展为 TypeScript 和 HTML 添加了 Angular 的代码片段。 2、Auto Close Tag(自动闭合标签) 自动添加 HTML/XML 关闭标记。 3、Auto Rename Tag(自动重命名标签) 自…

VSCode常用插件

一、VSCode常用的插件 目录 1.Chinese (Simplified) 2.Auto Rename Tag 3.One Dark Pro 颜色主题 4.格式化代码(vscode系统自带) 5.open in browser 浏览器预览页面 ​6. Live Server 实时预览(推荐) 7. vsc…

VsCode 插件推荐(个人常用)

效率规划 Chinese (Simplified) Language Pack for Visual Studio Code 汉化 Open in Browser 打开外部浏览器 settings sync 同步所有设置和插件 wakatime 编程时间及行为跟踪统计 koroFileHeader 在vscode中用于生成文件头部注释和函数注释的插件 自动补全类 Auto Rename …

VSCode常用插件整理

文章目录 1.Auto Rename Tag2.GitLens3.vscode-icons4. Auto Close Tag5.ES7 React/Redux/React-Native snippets6.JavaScript Debugger (Nightly)7.Image preview8.Chinese (Simplified)9.Todo Tree10. Tabnine11.Live Server 1.Auto Rename Tag 该插件可以帮助开发者在重命名…

vscode常用的9个插件,推荐给你们

1. Settings Sync 开发必备神器之一!可以帮助你在不同的设备之间同步vscode所有的配置、插件!!! 虽然配置有好几个步骤,但是一旦配置好了之后使用非常的方便,只需要记住快速上传和快速下载的快捷键即可。甚至你可以选…

数组的浅拷贝与深拷贝

文章目录 1 数据类型2 浅拷贝与深拷贝3 实现深拷贝方法3.1 JSON.string() 结合 JSON.parse()3.2 递归 4 JS 中的拷贝方法4.1 concat()4.2 slice()4.3 展开运算符(...)4.4 Object.assign() 5 参考文章 1 数据类型 在 JavaScript 中,数据被分为…

浅谈一下js的浅拷贝和深拷贝

目录 一、什么是拷贝 二、浅拷贝和深拷贝概念 2.1 浅拷贝 代码 2.2深拷贝 代码 2.3 jQuery中的拷贝 三、深拷贝应用场景 一、什么是拷贝 谈到拷贝的话,大家应该是不陌生的,拷贝简单来说就是复制。 复制的话,这里就得想到js的两种数据…