c++ - 在代码块中安装 C++ 库
问题描述
我需要在代码块中运行一些涉及 yaml-cpp 和 cvode 库的代码。我试图安装库并链接到编译器(我认为这就是我所做的),但它似乎不起作用。我还尝试将库包含在目录中并使用以下命令打开:
#include "yaml-cpp/yaml.h"
但我不断收到错误,目录中没有这样的文件。我还必须更改所有 h 文件中的目录,我觉得这不是我应该做的。但是,如果我将其保留为
#include <yaml-cpp/yaml.h>
我犯了同样的错误。
有人可以告诉我如何让图书馆工作吗?
我尝试使用没有显示任何错误消息的 cmake 构建它,并且我将文件构建在我计算机上自己的文件夹中。
我不知道如何解决这个问题。
谢谢
编辑:
(我在 Windows 上使用 gcc 编译器)
所以问题是找不到库。
库是否需要位于同一目录中,或者我可以将其链接到自己的文件夹中?
完成后,我应该将库包含在尖括号 <> 或引号“”中吗?
解决方案
第一步:需要编译yaml-cpp库。编译后,使用 cmake,(在 yaml-cpp/build 文件夹中)你会发现文件:
libyaml-cpp.dll
和 libyaml-cpp.dll.a
.
第 2 步:在 CodeBlocks 中创建一个新项目。
第 3 步:从项目菜单转到构建选项并设置 C++11 语言版本或更高版本。
第 4 步:现在您必须设置头文件和库链接的路径
第 5 步:将文件复制到包含 *.cbp 文件(代码块项目文件)的项目文件夹。
第6步:将相同的dll复制到和目录。
第 7 步:现在,在您的源代码中,您可以编写代码,因为您告诉 CodeBlocks 在哪里可以找到库文件。
就这样。
libyaml-cpp.dll
bin\Debug
bin\Release
#include <yaml-cpp/yaml.h>
推荐阅读
- android-intent - 接收 Intent 到 Progressive Web App
- c++ - C++:创建可以访问基类私有变量的派生类?
- java - 如何显示另一个类的图形
- reactjs - 如何使用条件和 React Hooks 设置随机初始状态?
- reactjs - 为什么带有 redux-form 的子组件不会重新渲染?
- excel - 将表格数据从网页复制到 Excel 的 VBA 代码
- rxjs - 如何重启 rxjs 间隔?
- python - 选择 pandas DataFrame 中的列子集与元组匹配的位置
- javascript - 在对象 ES6 中反应数组的 setState
- html - 我可以改进什么来做出响应式设计