PHPとMySQLの微妙な関係

CLIPHPを実行すると原因不明のエラー。

File 'NONEXISTENT/charsets/?.conf' not found (Errcode: 2)
Character set '#12' is not a compiled character set and is not specified in the 'NONEXISTENT/charsets/Index' file

原因はこの辺にありそう。
mysql:8601
[PHP-users 18729]Re: libmysqlclientを指定してコンパイル
File 'NONEXISTENT/charsets/?.conf' not found (Errcode: 2) - リンギオ

PHPが、「libmysqlclientがみつかりません」と言っているらしい。
とりあえずlibmysqlclientを探してみたら、
/usr/local/include/mysql/lib/mysql/libmysqlclient.so
こんなところにある。


つまりPHPインストール時のconfigureオプションの関係で、PHPが見に行く位置に
libmysqlclientが置いてないのが原因。


解決策の例

cd /usr/local/lib/mysql/
ln -s /usr/local/include/mysql/ include
ln -s /usr/local/lib/mysql/ lib


こんな感じでシンボリックリンクを張ってやり、
リビルド時に

./configure --with-mysql=/usr/local/lib/mysql

を追加する。