mysql - 为什么我会收到此 mysqlclient.lib 错误?

标签 mysql c database

我正在努力准备好一切,以便我可以使用 mySql 从 C 程序创建数据库。我下载了 C 连接器,并且在相当长的一段时间内我一直在尝试运行这个简单的程序来修复错误:

#include <my_global.h>
#include <mysql.h>



int main(int argc, char *argv[]) {

//Print the libmysqlclient library version
printf("The MySQL client version is : %s\n", mysql_get_client_info());
return 0;

}

此时, 我收到这些错误:enter image description here 还有其他人遇到过这个问题吗?

最佳答案

如果不具体了解如何调用编译器和链接器,则很难确定,但这似乎是一个链接问题。

错误来自ld,它是(编译时)链接器,所以我的猜测是您没有指定MySQL库(或者可能是它需要的其他一些库)。编译器可以构建模块,但链接器无法将引用链接到适当的库。

您似乎正在使用某种 IDE。应该有一个选项可以添加到编译器(或链接器)的命令行中。您需要附加(到末尾)类似 -lmysql`mysql_config --cflags --libs` 的内容。后者使用 mysql_config 脚本(如果安装了 MySQL,则该脚本应该可用)来获取适当的系统相关 cflags和库标志。前者只是假设您有一些名为 libmysql 的库。

关于mysql - 为什么我会收到此 mysqlclient.lib 错误?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49989052/

相关文章:

C - 创建一个匿名结构实例

php - Codeigniter Datamapper save() 实际上没有保存到数据库

c++ - 使用位移运算将两个变量相乘

mysql - 带有 SELECT 结果的 SQL 更新

c - 如何理解指针数组的类型转换?

c# - NHibernate/Fluent NHibernate 动态列映射

sql-server - 在不牺牲性能的情况下存储大文本字段的可维护方法是什么?

python - 将列表列表的输出格式化为列

python - Django 类型错误 : allow_migrate() got an unexpected keyword argument 'model_name'

php - mysql 列用于插入和不同的列用于更新