例如serice searchd start开启sphinx时提示:error while loading shared libraries: libmysqlclient.so.20: cannot open shared object file: No such file or directory
看提示肯定是没有找到libmysqlclient.so.20这个共享库文件
如果是64位系统则先查看下ls /usr/lib64 libmysqlclient* 发现果然没有相应的库文件。
那么就好解决了,到mysql安装目录下,库目录下建立一个软连接即可:
ln -s /usr/local/mysql/lib/libmysqlclient.so.20 /usr/lib64
当然这个根据自己的系统而定,如果是32位的那么 软链到/usr/lib下即可。
或者另一种方法:
出现这类错误表示,系统不知道xxx.so放在哪个目录下,这时候就要在/etc/ld.so.conf中加入xxx.so所在的目录。
一般而言,有很多的so会存放在/usr/local/lib或者64位的/usr/local/lib64这个目录底下,去这个目录底下找,如果没有发现自己所需要的.so文件。
可以把软链到这个目录来,ln -s /usr/local/mysql/lib/libmysqlclient.so.20 /usr/local/lib64
然后:
在/etc/ld.so.conf中加入/usr/local/lib这一行,保存之后,再运行:/sbin/ldconfig –v更新一下配置即可。