类似/usr/bin/ld: cannot find -xxxx的错误有很多,首先我们可以最简单的判断一下:
这类情况一般是由于缺乏某某库文件,又或者可能是由于已存在的库问题版本不对造成的
一般都是解决的办法就是安装缺乏的devel包就可以解决,当然还有其他的未知因素,我们看一个实例:
我在一台装centos5.2 x86_64的系统上配置PHP环境,提示这个错误
/usr/bin/ld: cannot find -lMysqLclien
于是我安装了
# yum -y install MysqL-devel
/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,一切正常!