linux下用c连接mysql

今天做这个测试同样遇到了人们常说的找不到mysql.h的问题。

下面是测试代码,源自《linux程序设计》(老外的大作) ,做了部分更改

 

#include <stdlib.h>
#include <stdio.h>
#include <mysql/mysql.h>
int main(int argc, char *argv[]) {
MYSQL *conn_ptr;
conn_ptr = mysql_init(NULL);
if (!conn_ptr) {
fprintf(stderr, “mysql_init failed\n”);
return EXIT_FAILURE;
}
conn_ptr = mysql_real_connect(conn_ptr, “localhost”, “rick”, “secret”,
“foo”, 0, NULL, 0);
if (conn_ptr) {
printf(“Connection success\n”);
} else {
printf(“Connection failed\n”);
}
mysql_close(conn_ptr);
return EXIT_SUCCESS;
}

 

当代码完成,便是要编译了。 可是看着教程上和网上的各个编译命令参数,不尽相同,而且都行不通。mysql文件始终没有找到。有人提到没有安装mysql-devel-5.0.37-2.fc7.i386.rpm(对应我mysql数据库版本)。我不清楚我的fedora7是不是有没有装,于是自己装了一遍。结果还是不行。

最后把#include<mysql.h>改成#include<mysql/mysql.h>发现eclipse cdt的找不到的提示没有了,而且在运行如下命令

              gcc -o connection -g connection.c -lz /usr/lib/mysql/libmysqlclient.15.0.0

出现令人兴奋的结果,那就是编译通过了。

运行链接程序 ./connection  一切正常。

你可能感兴趣的:(C++,c,mysql,linux,C#)