libmysqlclient_r.so.16: cannot open shared object file

前端时间把系统升级成 ubuntu 12.04,今天在执行之前写的一个 Python 爬虫程序时,突然报出 ImportError: Error loading object ‘crawler.pipelines.MysqlPipeline': libmysqlclient_r.so.16: cannot open shared object file: No such file or directory 这个错误。

原来 ubuntu 12.04 把 libmysqlclient 16 升级成了 libmysqlclient 18,所以才导致这个问题,一个偷懒的解决办法如下:

cd /usr/lib/i386-linux-gnu/
sudo ln -sf libmysqlclient_r.so.18 libmysqlclient_r.so.16

如果你有更好的解决办法,欢迎分享!

easy_install MySQLdb(mysql-python) 时提示 mysql_config not found

最近在尝试用 python 写一些小脚本,通过 easy_install 安装 python 下 mysql-python module MySQLdb 时,遇到了如下错误提示:

EnvironmentError: mysql_config not found

原因是安装 mysql-python 前,需要安装 libmysqlclient16 libmysqlclient16-dev 和 python-dev。即:

sudo apt-get install libmysqlclient16 libmysqlclient16-dev python-dev

然后再执行:

sudo easy_install mysql-python

即可安装成功。