如何在Visual Studio新C++项目中调用之前配置过的库?
本文介绍在Visual Studio软件中调用C++各种配置、编译完毕的第三方库的方法。
在撰写C++代码时,如果需要用到他人撰写的第三方库(例如地理数据处理库GDAL、矩阵运算库Armadillo等),并不能像Python等语言那样,安装好库后直接在不同代码文件中使用;而是需要每一次新建一个代码文件(在Visual Studio软件中就是新建一个项目)后,还需要额外配置一下才可以使用。
本文就以之前的文章Visual Studio部署C++矩阵库Armadillo的方法中介绍的矩阵运算库Armadillo为例,介绍安装完某一个第三方库后,如何在Visual Studio软件新的项目中调用这个库。
首先,按照文章Visual Studio部署C++矩阵库Armadillo的方法中提到的方法,我们配置、编译好这个矩阵运算库Armadillo。随后,在我们配置这一库时所创立的项目中,是可以在源文件中调用该库的;如下图所示,我们在这一个项目的源文件中输入一段调用该库的代码,其在引入<armadillo>时是不会报错的,且代码也可以正常运行。

但是,在实际使用过程中,我们往往需要在很多其他的项目中调用刚刚配置好的Armadillo库;如下图所示,我们在电脑的另一个位置新建一个项目,假设这个项目也需要使用Armadillo库。

随后,在刚刚新建立的项目中输入调用Armadillo库的代码,可以看到其在引入<armadillo>时就已经报错。

且代码亦无法正常运行。

这就需要我们在每一个调用Armadillo库的新的项目开始运行前,进行如下的设置。
首先,在Visual Studio软件左侧的内容列表中选中项目名称(即下图的Testlib),并选择“属性”按钮;随后,在弹出的窗口中依次选择“C/C++”→“常规”→“附加包含目录”→“编辑”。

接下来,选择我们配置Armadillo库时得到的include文件夹。

完成后,会出现如下图所示的情况。

接下来,在“链接器”选项中,选择“附加库目录”。

依据同样的方法,将我们配置Armadillo库时得到的lib_win64文件夹导入其中。这里需要注意,不同的第三方库在进行这一步时所选的文件夹名称可能不一致,但一般这里选择带有lib字样的文件夹就可以。

导入后,如下图所示。

最后,再在“链接器”→“输入”中选择“附加依赖项”。

并将我们配置Armadillo库时得到的lib文件(对于Armadillo库而言,这里就是libopenblas.lib文件)的路径与其文件名称输入其中;我们可以在按下Shift按钮的同时右键选中对应lib文件,即可出现“复制文件地址”的选项。

将复制好的文件地址粘贴至“附加依赖项”中即可,如下图所示。

此时,可以看到刚刚新建立的项目中,其在引入<armadillo>时就已经不再报错。

同时,代码也可以正常运行。

至此,大功告成。
如何在Visual Studio新C++项目中调用之前配置过的库?的更多相关文章
- 在Visual Studio开发的项目中引用GAC中的dll
Open the windows Run dialog (Windows Key + r) Type C:\Windows\assembly\gac_msil. This is some sort o ...
- Visual studio加载项目时报错 尚未配置为Web项目XXXX指定的本地IIS,需要配置虚拟目录。解决办法。
在SVN上下载工程项目.使用visual studio打开时,出现如下提示: 查找相关资料,解决办法如下: 使用记事本打开工程目录下的.csproj文件.把<UseIIS>False< ...
- 【转】【UML】使用Visual Studio 2010 Team System中的架构师工具(设计与建模)
Lab 1: 应用程序建模 实验目标 这个实验的目的是展示如何在Visual Studio 2010旗舰版中进行应用程序建模.团队中的架构师会通过建模确定应用程序是否满足客户的需求. 你可以创建不同级 ...
- 如何在 Visual Studio 中使用 Git 同步代码到 CodePlex
开源社区不管在国内还是国外都很火热,微软也曾因为没有开源而倍受指责,但是随着 .Net framework.ASP.Net MVC等框架的逐渐开源,也让大家看到了微软开源的步伐.CodePlex 则是 ...
- [转]如何在 Visual Studio 中使用 Git 同步代码到 CodePlex
本文转自:http://www.cnblogs.com/stg609/p/3673782.html 开源社区不管在国内还是国外都很火热,微软也曾因为没有开源而倍受指责,但是随着 .Net framew ...
- 如何在Visual Studio 2017中使用C# 7+语法 构建NetCore应用框架之实战篇(二):BitAdminCore框架定位及架构 构建NetCore应用框架之实战篇系列 构建NetCore应用框架之实战篇(一):什么是框架,如何设计一个框架 NetCore入门篇:(十二)在IIS中部署Net Core程序
如何在Visual Studio 2017中使用C# 7+语法 前言 之前不知看过哪位前辈的博文有点印象C# 7控制台开始支持执行异步方法,然后闲来无事,搞着,搞着没搞出来,然后就写了这篇博文,不 ...
- [译]如何在visual studio中调试Javascript
本文翻译youtube上的up主kudvenkat的javascript tutorial播放单 源地址在此: https://www.youtube.com/watch?v=PMsVM7rjupU& ...
- 如何在Visual Studio中选择C++和C#的编译器版本
博客搬到了fresky.github.io - Dawei XU,请各位看官挪步.最新的一篇是:如何在Visual Studio中选择C++和C#的编译器版本.
- 如何在"Visual Studio Code"中使用" Git" 进行版本控制
如何在"Visual Studio Code"中使用" Git" 进行版本控制 本来认为此类教程,肯定是满网飞了.今天首次使用VS Code的Git功能,翻遍了 ...
- Visual Studio下Qt编程中对中文的处理
Visual Studio下Qt编程中对中文的处理 本文为原创文章,原文地址http://www.cnblogs.com/c4isr/p/qt_develop_in_vs.html Visual St ...
随机推荐
- 处理uniapp(同理小程序)开发中使用rich-text富文本解析,图片未自适应宽度问题(图片显示不全)
https://www.cnblogs.com/luyaru/p/15538883.html
- P5719 水题
https://www.luogu.com.cn/problem/P5719 唠唠:别看这题很水,且只要求保留小数点后一位,倘若用float而不是double的话就无法AC,洛谷评测则只有40分.所以 ...
- sipp3.6 on centos7安装部署
概述 在VOIP软交换的开发过程中,必然需要对软交换进行批量压测. SIP压测工具一般都是sipp,免费,开源,功能足够强大,配置灵活,优点多. 环境 centos7.9 cmake3.6 sipp ...
- CLion创建自定义代码模板
1.问题 很多时候我们都想要简化代码编写,比如像IDEA那样,写入一个sout即会补全为System.out.println( |inserts cursor here| );的形式 最急切的例子便是 ...
- 【SHELL】[ ]、[[ ]]条件判断结构
输入参数包含 'arg-m' 时,会输出 Hit Arg-M 和 Hit Arg-N [[ ${EXEC_PARAMS[@]} =~ 'arg-m' ]] && echo " ...
- bootstrap : 解决使图片全屏显示有空白边距的问题
<!DOCTYPE html> <html lang="en"> <head> <meta charset="utf-8 ...
- Django数据导入导出神器django-import-export使用
前言 Django以快速开发闻名,但是如果处理数据的导出导入还需要自己写脚本,那就有违"Python之禅"了-- 而且导数据通常需要不同的格式,Excel.csv.json等,每种 ...
- 【转】国产飞腾D2000:基于A72?
https://zhuanlan.zhihu.com/p/612054128 China's Phytium D2000: Building on A72? 国产飞腾D2000:基于A72? PS:麒 ...
- [转帖]Innodb存储引擎-备份和恢复(分类、冷备、热备、逻辑备份、二进制日志备份和恢复、快照备份、复制)
文章目录 备份和恢复 分类 冷备 热备 逻辑备份 mysqldump SELECT...INTO OUTFILE 恢复 二进制日志备份与恢复 快照备份(完全备份) 复制 快照+复制的备份架构 备份和恢 ...
- [转帖]Intel、海光、鲲鹏920、飞腾2500 CPU性能对比
https://plantegg.github.io/2021/06/18/%E5%87%A0%E6%AC%BECPU%E6%80%A7%E8%83%BD%E5%AF%B9%E6%AF%94/ Int ...