2010年4月23日金曜日

php+MySQLで「Headers and client library minor version mismatch.」のエラー

php+MySQLの環境で「Headers and client library minor version mismatch.」のエラーが表示されました。原因はわかっていて、MySQLが既にrpmインストールされている環境へ、phpをソースからインストールしたためです。

このサーバー環境では、素直にyumでphpをインストールすると、PHP4がインストールされました。たぶん、いろいろ設定を変えれば、PHP5もインストールできると思います。しかし、設定が面倒だし、急いでいたこともあり、phpをソースからインストールしてPHP5にしました。

最初に、根こそぎphp関連のパーッケージは削除したのですが、どうしても上記のエラーメッセージが表示されてしまいます。かえって面倒な事になったかなと思いつつも、自前のPHPプログラムの設定作業を続けました。最初はエラーメッセージを表示させないようにして、しのいでいたのですが、どうもしっくりきません。仕方なく、ソースのインストールをやり直して、対処することにしました。

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

./configure --with-mysql=/usr/local/lib/mysql
MySQLクライアント用に新たにディレクトリを指定してやると、うまいことMySQLのエクステンションがコンパイルされます。これでエラーメッセージが表示されなくなりました。

0 件のコメント:

コメントを投稿