※ ChatGPTを利用し、要約された質問です(原文:perl DBD::Pg インストールでエラー発生)
perl DBD::Pg インストールでエラー発生
このQ&Aのポイント
Perl + PostgreSQLのCGIを作成しているときに、DBI、DBD::PGのインストールでエラーが発生しました。
DBD::Pgのインストールの手順を試しましたが、パスの問題や依存モジュールのインストールに関するエラーが発生しました。
この問題を解決するためには、適切なパスを設定し、依存モジュールをインストールする必要があります。
perl DBD::Pg インストールでエラー発生
こんにちは。
以下の環境でPerl+postgreSQLのCGIを作成していますが、
DBI、DBD::PGのインストールでエラーが出てしまい大変困っています。
どうぞお力添えをお願いします。
環境----------------------
OS:CentOS
VERSION = PostgreSQL 8.1.18
Perl:v5.8.8
--------------------------
●手順
CPANより下記モジュールをダウンロードし、
・DBI : DBI-1.609.tar.gz
・DBD::PG : DBD-Pg-2.16.1.tar.gz
それぞれ
・perl Makefile.PL
・make
・make install
を実行。
DBD::PGの perl Makefile.PL で pg_config のパスを聞かれるが存在しなかったため、ネットの情報から以下を実行。
yum install postgresql-devel
再度DBD::PGのperl Makefile.PL
を実施しましたが、以下のようなワーニング(※1)が出力してしまい、
make,make installを実施後に動作確認のスクリプトを実行してもやはりエラーとなってしまいます。(※2)
※1
Warning: prerequisite version 0 not found.
Could not eval '
package ExtUtils::MakeMaker::_version;
no strict;
local $VERSION;
$VERSION=undef; do {
use version; our $VERSION = qv('2.16.1');
}; $VERSION
' in Pg.pm: Can't locate version.pm in @INC (@INC contains: t/lib /usr/lib/perl5/site_perl/5.8.8/i386-linux-thread-multi /usr/lib/perl5/site_perl/5.8.7/i386-linux-thread-multi /usr/lib/perl5/site_perl/5.8.6/i386-linux-thread-multi /usr/lib/perl5/site_perl/5.8.5/i386-linux-thread-multi /usr/lib/perl5/site_perl/5.8.8 /usr/lib/perl5/site_perl/5.8.7 /usr/lib/perl5/site_perl/5.8.6 /usr/lib/perl5/site_perl/5.8.5 /usr/lib/perl5/site_perl /usr/lib/perl5/vendor_perl/5.8.8/i386-linux-thread-multi /usr/lib/perl5/vendor_perl/5.8.7/i386-linux-thread-multi /usr/lib/perl5/vendor_perl/5.8.6/i386-linux-thread-multi /usr/lib/perl5/vendor_perl/5.8.5/i386-linux-thread-multi /usr/lib/perl5/vendor_perl/5.8.8 /usr/lib/perl5/vendor_perl/5.8.7 /usr/lib/perl5/vendor_perl/5.8.6 /usr/lib/perl5/vendor_perl/5.8.5 /usr/lib/perl5/vendor_perl /usr/lib/perl5/5.8.8/i386-linux-thread-multi /usr/lib/perl5/5.8.8 .) at (eval 10) line 7, <FH> line 20.
BEGIN failed--compilation aborted at (eval 10) line 7, <FH> line 20.
WARNING: Setting VERSION via file 'Pg.pm' failed
at /usr/lib/perl5/5.8.8/ExtUtils/MakeMaker.pm line 515
Multiple copies of Driver.xst found in: /usr/lib/perl5/site_perl/5.8.8/i386-linux-thread-multi/auto/DBI/ /usr/lib/perl5/vendor_perl/5.8.8/i386-linux-thread-multi/auto/DBI/ at Makefile.PL line 263
Using DBI 1.609 (for perl 5.008008 on i386-linux-thread-multi) installed in /usr/lib/perl5/site_perl/5.8.8/i386-linux-thread-multi/auto/DBI/
Writing Makefile for DBD::Pg
※2
install_driver(Pg) failed: Can't locate version.pm in @INC (@INC contains: /usr/lib/perl5/site_perl/5.8.8/i386-linux-thread-multi /usr/lib/perl5/site_perl/5.8.7/i386-linux-thread-multi /usr/lib/perl5/site_perl/5.8.6/i386-linux-thread-multi /usr/lib/perl5/site_perl/5.8.5/i386-linux-thread-multi /usr/lib/perl5/site_perl/5.8.8 /usr/lib/perl5/site_perl/5.8.7 /usr/lib/perl5/site_perl/5.8.6 /usr/lib/perl5/site_perl/5.8.5 /usr/lib/perl5/site_perl /usr/lib/perl5/vendor_perl/5.8.8/i386-linux-thread-multi /usr/lib/perl5/vendor_perl/5.8.7/i386-linux-thread-multi /usr/lib/perl5/vendor_perl/5.8.6/i386-linux-thread-multi /usr/lib/perl5/vendor_perl/5.8.5/i386-linux-thread-multi /usr/lib/perl5/vendor_perl/5.8.8 /usr/lib/perl5/vendor_perl/5.8.7 /usr/lib/perl5/vendor_perl/5.8.6 /usr/lib/perl5/vendor_perl/5.8.5 /usr/lib/perl5/vendor_perl /usr/lib/perl5/5.8.8/i386-linux-thread-multi /usr/lib/perl5/5.8.8 .) at /usr/lib/perl5/site_perl/5.8.8/i386-linux-thread-multi/DBD/Pg.pm line 20.
BEGIN failed--compilation aborted at /usr/lib/perl5/site_perl/5.8.8/i386-linux-thread-multi/DBD/Pg.pm line 20.
Compilation failed in require at (eval 3) line 3.
Perhaps a module that DBD::Pg requires hasn't been fully installed
at ./test02.pl line 5
どうぞよろしくお願いいたします。
お礼
ありがとうございました! ご指摘の通りversion-0.80.tar.gzをインストールすることで 無事、DBIをインストールすることができました。 ところで、だたいまパールを初めて一週間の若輩者で四苦八苦しておりますが 上記のような情報はどこで得られるのでしょうか?