在linux下编译含有mysql连接的c语言程序

星满天 发布于 2012/03/27 11:22
阅读 2K+
收藏 0

喔喔,小弟在linux下想编译一个含有mysql连接的从语言程序,也一直有问题,没办法编译,简单说下,机器上装了mysql,源码安装的。gcc -o test test.c 后面的参数应该怎么写?求指教

加载中
0
牧北
牧北

1;rpm -qa| grep mysql命令查看确认是否安装了mysql-libs,mysql-server,mysql,mysql-devel这四个包。

2:启动mysql服务器(service mysqld start)。

3:gcc -I/usr/include/mysql 源文件名 -L/usr/lib/mysql -lmysqlclient -o 目标文件名

牧北
牧北
@星满天 : mysql-libs,mysql-devel都要,前者应该是一些C语言操作mysql的动态函数库,后者时一些头文件等等。。。
星满天
mysql -lib包是哪个 ?mysql-5.0.96-linux-i686-glibc23.tar.gz?
星满天
北北,要是源码安装,也需要这几个rpm包么?都是什么作用?
0
牧北
牧北
也就时像java中的jdbc驱动一样。
0
星满天

引用来自“牧北”的答案

也就时像java中的jdbc驱动一样。
/usr/lib/mysql/libmysqlclient.a(libtaocrypt_la-dh.o)(.text+0x3f): In function `TaoCrypt::(anonymous namespace)::DiscreteLogWorkFactor(unsigned int)':
: undefined reference to `pow'
/usr/lib/mysql/libmysqlclient.a(libtaocrypt_la-dh.o)(.text+0x53): In function `TaoCrypt::(anonymous namespace)::DiscreteLogWorkFactor(unsigned int)':
: undefined reference to `log'
/usr/lib/mysql/libmysqlclient.a(libtaocrypt_la-dh.o)(.text+0x65): In function `TaoCrypt::(anonymous namespace)::DiscreteLogWorkFactor(unsigned int)':
: undefined reference to `pow'
collect2: ld returned 1 exit status
编译后出现了这个?还是client包没装?
牧北
牧北
调用数学函数"pow",需要连接相关函数库。 gcc编译时加 -lm 项参数。
0
Yisen
Yisen
加多个 -lm
返回顶部
顶部