useDBIしたときのエラー対処法


PerlからmySQLを操作する為にuse DBIしたら下記の様なエラーが発生しました

        • -

install_driver(mysql) failed:
Can't load '/usr/lib/perl5/site_perl/5.8.5/i386-linux-thread-multi/auto/DBD/mysql/mysql.so'
for module DBD::mysql: libmysqlclient.so.14: cannot open shared object file:
No such file or directory at /usr/lib/perl5/5.8.5/i386-linux-thread-multi/DynaLoader.pm line 230.
at (eval 2) line 3
Compilation failed in require at (eval 2) line 3.
Perhaps a required shared library or dll isn't installed where expected

        • -

【対処方法】
上記エラーは、『libmysqlclient.so.14』が見つからないといっているエラーです。

確認方法 :ldd /usr/.../mysql.so
予想される結果 :libmysqlclient.so.14 => not found

『libmysqlclient.so.14』が置かれているディレクトリを『ld.so.conf』に指定します。

# vi /etc/ld.so.conf

include ld.so.conf.d/*.conf
/usr/X11R6/lib
/usr/local/lib/mysql

# ldconfig // 再読込み




確認方法 :ldd /usr/.../mysql.so
予想される結果 :libmysqlclient.so.14 => /usr/local/lib/mysql/libmysqlclient.so.14 (0x0018d000)