如何在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>时就已经不再报错。

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

至此,大功告成。

相关推荐
汉汉汉汉汉2 小时前
C++11新特性详解:从列表初始化到线程库
c++
楼田莉子3 小时前
C++算法题目分享:二叉搜索树相关的习题
数据结构·c++·学习·算法·leetcode·面试
大锦终3 小时前
【算法】模拟专题
c++·算法
方传旺4 小时前
C++17 std::optional 深拷贝 vs 引用:unordered_map 查询大对象性能对比
c++
Dontla4 小时前
Makefile介绍(Makefile教程)(C/C++编译构建、自动化构建工具)
c语言·c++·自动化
何妨重温wdys4 小时前
矩阵链相乘的最少乘法次数(动态规划解法)
c++·算法·矩阵·动态规划
重启的码农5 小时前
ggml 介绍 (6) 后端 (ggml_backend)
c++·人工智能·神经网络
重启的码农5 小时前
ggml介绍 (7)后端缓冲区 (ggml_backend_buffer)
c++·人工智能·神经网络
雨落倾城夏未凉5 小时前
5.通过拷贝构造函数复制一个对象,假如对象的成员中有个指针类型的变量,如何避免拷贝出来的副本中的该成员之下行同一块内存(等价于默认拷贝构造函数有没有缺点)
c++·后端
雨落倾城夏未凉5 小时前
4.深拷贝VS浅拷贝
c++·后端