日期:2014-05-16  浏览次数:20851 次

linux下MYSQL错误问题
头文件  
#include <unistd.h>  
  #include <arpa/inet.h>  
  #include <stdio.h>  
  #include <stdlib.h>  
  #include <string.h>  
  #include <sys/types.h>  
  #include <sys/socket.h>  
  #include <netinet/in.h>  
  #include <mysql/mysql.h>  
  #include <signal.h>  
  #include <errno.h>  
  #include <syslog.h>  
   
  MYSQL mysql;

但是提示 MYSQL_QUERY等函数都错误了。汗 

/tmp/ccReKUJB.o: In function `main':
ddu.c:(.text+0xaf): undefined reference to `mysql_init'
ddu.c:(.text+0x111): undefined reference to `mysql_real_connect'
ddu.c:(.text+0x121): undefined reference to `mysql_error'
/tmp/ccReKUJB.o: In function `db_close':
ddu.c:(.text+0x182): undefined reference to `mysql_close'
/tmp/ccReKUJB.o: In function `find_ps':
ddu.c:(.text+0x1e5): undefined reference to `mysql_query'
ddu.c:(.text+0x1f5): undefined reference to `mysql_error'
ddu.c:(.text+0x21f): undefined reference to `mysql_store_result'
ddu.c:(.text+0x234): undefined reference to `mysql_error'
ddu.c:(.text+0x261): undefined reference to `mysql_fetch_row'
ddu.c:(.text+0x299): undefined reference to `mysql_free_result'

请问这是为什么的了 ??、
 

------解决方案--------------------
首先你要确定你的Mysql是否安装成功
其次你编译的时候是否已经指定MYSQL的库路径,头文件路径
比如:
gcc -o test test.c -I/usr/include/mysql -L/usr/lib/mysql -lmysqlclient -lz -lm