もうまんま表題の通りです。ちょっと遊べる環境作っておこうと思ってCentOS5.7のVM作って、そこにMySQL5.5をソースからビルドしてインストールした時の話です。
まぁエラーが出てプチハマりしたってだけの話ですが。
MySQLのインストールは問題なく終わり、コマンドラインでMySQLへのログインも問題なく終わりました。そこへPython2.7のインストールも無事に終わり、あとはモジュールを入れていくだけ、という状況でMySQL-pythonをインストールしたあとのことです。
Pythonを起動して「import MySQLdb」と叩くと、
ImportError: libmysqlclient.so.18: cannot open shared object file: No such file or directory
とのエラーメッセージ。先週CentOS5.6で環境作ったときには出なかったエラーメッセージです。
まぁただ単に共有ライブラリとして見える場所においていなかっただけの話だったのです。
ので、
/etc/ld.so.conf
に
/usr/local/mysql/lib
を追記して、
/sbin/ldconfig
要するに置いてある場所も共有ライブラリ置き場として追加してやって設定反映で終わり。すでに共有ライブラリ置き場になっているところにシンボリックリンクを置いてあげてもよかったのかもしれませんが、ライブラリからの相対パス云々があると悲しいことになりそうだったのでパス追加にしておきました。
ハセテツが無知なだけで、シンボリックリンク追加だけでよかったのかもしれません。お好きな方法をお試しいただければ。