c语言 不能关闭mysql连接_C语言连接MYSQL问题-阿里云开发者社区

写了一个连接MYSQL的C程序,出现以下错误信息:

cc -I/usr/include/mysql -Wall -g  -lmysqlclient -g -L/usr/lib  connect1.c   -o connect1

/tmp/ccykDQvd.o: In function `main':

/home/jie/Beginning Linux Program/ch08/connect1.c:9: undefined reference to `mysql_init'

/home/jie/Beginning Linux Program/ch08/connect1.c:15: undefined reference to `mysql_real_connect'

/home/jie/Beginning Linux Program/ch08/connect1.c:24: undefined reference to `mysql_close'

collect2: ld 返回 1

make: *** [connect1] 错误 1

从出错信息看,是链接库找不到的问题。

因此查看了 /usr/lib 下的库文件发现:

[jie@jie:/usr/lib]$ls libmysqlclient*

libmysqlclient.a    libmysqlclient_r.so     libmysqlclient_r.so.16.0.0  libmysqlclient.so.16

libmysqlclient_r.a  libmysqlclient_r.so.16  libmysqlclient.so           libmysqlclient.so.16.0.0

链接库路径没错,库文件也有,怎么就找不到呢?

附上简单源码:

01.#include

02.#include

03.

04.#include "mysql.h"

05.

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

07.   MYSQL *conn_ptr;

08.

09.   conn_ptr = mysql_init(NULL);

10.   if (!conn_ptr) {

11.      fprintf(stderr, "mysql_init failed\n");

12.      return EXIT_FAILURE;

13.   }

14.

15.   conn_ptr = mysql_real_connect(conn_ptr, "localhost", "jie", "edgeyang",

16.                                                     "children", 0, NULL, 0);

17.

18.   if (conn_ptr) {

19.      printf("Connection success\n");

20.   } else {

21.      printf("Connection failed\n");

22.   }

23.

24.   mysql_close(conn_ptr);

25.

26.   return EXIT_SUCCESS;

27.}

复制代码另外,使用的系统刚升级为UBUNTU 11.10,MYSQL 版本信息如下:

Server version                5.1.58-1ubuntu1

Protocol version        10

Connection                Localhost via UNIX socket

UNIX socket                /var/run/mysqld/mysqld.sock

Uptime:                        5 hours 41 min 40 sec

在系统升级之前,同样的程序是可以连接到MYSQL的!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值