您的位置:首页 > 数据库 > MySQL

解决/usr/bin/ld: cannot find -lmysqlclient错误

2014-04-04 07:25 459 查看
类似/usr/bin/ld: cannotfind -xxxx的错误有很多, 首先我们可以最简单的判断一下:

这类情况一般是由于缺乏某某库文件, 又或者可能是由于已存在的库问题版本不对造成的

一般都是解决的办法就是安装缺乏的devel包就可以解决, 当然还有其他的未知因素, 我们看一个实例:

我在一台装centos5.2 x86_64的系统上配置php环境, 提示这个错误

"/usr/bin/ld:cannot find -lmysqlclient"

于是我安装了

# yum -y installmysql-devel

结果提示依旧, 我根据提示查看config.log

/usr/bin/ld: skipping incompatible/usr/local/mysql/lib/libmysqlclient.so when searching for -lmysqlclient

/usr/bin/ld: skipping incompatible/usr/local/mysql/lib/libmysqlclient.a when searching for -lmysqlclient

/usr/bin/ld: cannot find -lmysqlclient

她还是去找/usr/local/mysql/lib/libmysqlclient.so,我来把这个错的换成对了, 刚才装了mysql-devel, 那么在/usr/lib64下就多了一个mysql的目录

# cd/usr/local/mysql

# mv lib lib.bak

# ln -s/usr/lib64/mysql /usr/local/mysql/lib (给他做个软链接)

然后再次编译安装php, 一切正常!

======================

事实上我用的CentOS5.3 遇到同样问题,但用上面的方法没有解决,usr/lib64/mysql 是空的。但这篇文章启发了我,应该是32与64位之间的问题。我把mysql相关rpm的64位版除了server之外都装了一遍,问题解决。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: