mariadb 连接器 c 的链接选项

问题描述

Sooo,我正在编写一个 C++ 应用程序来从套接字接收数据并将其保存到 MariaDB 数据库中。

我从 libmariadb3 包中包含了 MariaDB 连接器 c 库,它运行没有问题。

在编译程序时,我必须添加链接选项 -l mysqlclient。

编译命令为:

g++ main.cpp -o output -l mysqlclient

所以我的问题是为什么我必须添加此链接选项以及如何解决它以便我不必添加此选项?

(这是一个示例编译命令。实际上我是用 cmake 编译的,我自己编译了 mariadb 连接器 c 库。cmake 中的链接器选项将是 target_link_options(${PROJECT_NAME} PUBLIC -lmysqlclient))

解决方法

没有解决方法,您需要链接到您要使用的库。

在 CMake 中,target_link_libraries 简化了这一点,并在编译/链接时添加了所需的包含路径和库。

相关问答

错误1:Request method ‘DELETE‘ not supported 错误还原:...
错误1:启动docker镜像时报错:Error response from daemon:...
错误1:private field ‘xxx‘ is never assigned 按Alt...
报错如下,通过源不能下载,最后警告pip需升级版本 Requirem...