postgreSQLを使い、CGIは perl 5.8.5、Pg.pm を使っているのですが、最近 linux のバージョンを新しくしたら CGI でエラーがでるようになりました。
apach のログを見ますと、Pg.pm でエラーがでているようです。
[Thu Jun 01 17:29:32 2006] [error] [client 210.196.83.97] Can't load '/usr/lib/perl5/site_perl/5.8.5/i386-linux-thread-multi/auto/Pg/Pg.so' for module Pg: libpq.so.4: 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., referer: http://...
というのが出ています。
/usr/lib/perl5/site_perl/5.8.5/i386-linux-thread-multi/auto/Pg/Pg.so
も
/usr/lib/perl5/5.8.5/i386-linux-thread-multi/DynaLoader.pm
も間違いなくありますし、パーミッションも問題ありません。しかも不思議なことにシェルからコマンドラインで CGI を実行してみたら、ちゃんと動きます。また少し古いバージョンの linux なら動いています。
少し古いバージョンの linux は
Linux version 2.4.21-27.0.2.ELsmp (centos@centos-athlon) (gcc version 3.2.3 20030502 (Red Hat Linux 3.2.3-42)) #1 SMP Wed Jan 19 01:53:23 GMT 2005
j
新しくてエラーが出る方の linux は
Linux version 2.6.9-34.ELsmp (buildcentos@build-i386) (gcc version 3.4.5 20051201 (Red Hat 3.4.5-2)) #1 SMP Wed Mar 8 00:27:03 CST 2006
です。postgreSQLのバージョンはどちらも最新版の 8.1.4 です。
どなたかこの現象の解決方法がわかるかたがいらっしゃったら、お教えください。