1

我对编程和 C++ 比较陌生,刚刚开始学习 MYSQL。我一直在寻找几天,但找不到解决方案。我通常使用 Cygwin&VIM&g++ 来编写、编译和运行我编写的代码。

我的目标是从我在笔记本电脑上设置的 MYSQL 数据库中检索数据,并能够对该数据运行简单的算法并可能更新数据库。

我进入了 MYSQL 的网站并浏览了教程并在这里找到了一个示例。我下载了 Boost、Connector、MYSQL 服务器库。当我运行它时,我收到一条错误消息,提示找不到“connection.h”。我确定这是因为当我编译它时,g++ 没有将库的位置添加到它通过的搜索路径中。该示例具有以下内容:

#include <cppconn/conneciton.h>

这些尖括号表示它将搜索(在当前目录之后)标准搜索目录。我猜我必须添加一个新路径(库所在的位置),以便编译器查看该标准目录并编译头文件。

通过谷歌搜索,我在 g++ 中思考我可以使用 -L dir -I 添加新的搜索路径,但我不知道如何使用它。任何人都可以解释/告诉我(通过例子)如何解决这个问题吗?:(

4

1 回答 1

0

#include 问题可以用 -I 解决(如果需要,-L 用于库,但首先你必须通过编译)。

您需要弄清楚头文件的安装位置(可能在 /usr/include 或 /usr/local/include/ 下的某个位置),然后在该目录中添加 -I,也可能是您需要安装开发包,许多 *nix 发行版根据运行时构建时间的区别进行拆分。

还要注意 -I 包可能会执行类似 install to /usr/include/libraryname/libname_version/libname 在这种情况下您只想添加 -I/usr/include/libraryname/libname_version/ 然后在你的源文件有#include

于 2018-01-13T07:30:31.480 回答