首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >找不到Mysql库

找不到Mysql库
EN

Stack Overflow用户
提问于 2015-11-06 06:27:46
回答 2查看 4.6K关注 0票数 1

我已经安装了mysql-devel。相关库位于/usr/inlcude/mysql

下面是我要在Centos7上编译的示例代码:

代码语言:javascript
复制
#include <my_global.h>
#include <mysql/mysql.h>

int main(int argc, char **argv)
{
  printf("MySQL client version: %s\n", mysql_get_client_info());

  exit(0);
}

错误消息:

代码语言:javascript
复制
Mysql_test.c:1:23: fatal error: my_global.h: No such file or directory
#include <my_global.h>

有什么问题吗?我是否应该在主路径/usr/include中创建/usr/include/mysql下所有库的回显

EN

回答 2

Stack Overflow用户

发布于 2015-11-06 06:33:55

您可能需要将mysql include添加到编译中,正如您所怀疑的那样:

代码语言:javascript
复制
-I/usr/include/mysql

然后就

代码语言:javascript
复制
#include <mysql.h>
#include <my_global.h>
票数 0
EN

Stack Overflow用户

发布于 2015-11-06 08:08:01

如果您使用的是gcc,则如下所示:

代码语言:javascript
复制
#include <mysql/my_global.h>

如果使用的是gcc,则不需要指定-I

依赖于mysql包含目录的位置。my_global.h位于何处?

编辑:

代码语言:javascript
复制
g++ -g -Wall -I/usr/local/include test2.o Test.o -o test

所以在你的编译器中添加这个:-I/usr/local/include并像这样包含这个#include <mysql/my_global.h>

为了解决未定义的引用,你需要喜欢到库的路径。mysqlclient.a/.so并添加此代码以链接库

代码语言:javascript
复制
g++ -g -Wall -I/usr/local/include -L/path_to_lib -lmysqlclient test2.o Test.o -o test
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/33555997

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档