无法找到Mysql库

时间:2015-11-05 22:27:46

标签: mysql c compilation include centos7

我安装了mysql-devel。相关图书馆位于/usr/inlcude/mysql

这是我在Centos7上编译的示例代码:

#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);
}

错误讯息:

Mysql_test.c:1:23: fatal error: my_global.h: No such file or directory
#include <my_global.h>

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

2 个答案:

答案 0 :(得分:0)

您可能需要在编译中添加mysql include,如您所知:

-I/usr/include/mysql

然后只是

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

答案 1 :(得分:0)

如果您使用gcc包含如下:

#include <mysql/my_global.h>

如果您使用gcc,则无需指定-I

取决于mysql包含dir的位置。位于my_global.h

的位置

编辑:

g++ -g -Wall -I/usr/local/include test2.o Test.o -o test

Soo为您添加编译器:-I/usr/local/include并包含如此#include <mysql/my_global.h>

要解决未定义的引用,您需要喜欢库路径。 mysqlclient.a/.so 并添加它以链接库

g++ -g -Wall -I/usr/local/include -L/path_to_lib -lmysqlclient test2.o Test.o -o test