スタンダードプランのサーバーで、
perlのCGIでDBI+DBDを使用してmysqlに接続し、
tableの検索・削除等は通常に行えますが、
Class::DBIを使用しようと
Web+DB Press vol.25の
p160のようにしたのですが、
うまくいきませんでした。
cpanからダウンロードしたモジュール、
及び、その他の状況につきましては、
以下のとおりになります。
インストールするモジュールが
足りないのでしょうか、
それとも使用方法が悪いのでしょうか、
ご存知の方がおられましたら、
教えてください。
Class::DBI は perldoc記載の version 0.96
pmファイルを設置したモジュール-----------------------------------------------------
Class::Trigger 0.07; ←0.10をインストール
Class::Accessor
Class::Data::Inheritable
Ima::DBI
List::Util;
UNIVERSAL::moniker;
質問する文字数が限られているので
ここまでしか入力できませんが、
ご存知の方がおられましたら、
ぜひ教えてください。
どのようにインストールしたのか、また、どのようにうまくいかないかを説明していただけないと、アドバイスしにくいです。
(少なくとも僕は問題なく使えています)
とりあえずシェルで、
perl -MClass::DBI -e 1
を実行したとき、エラーが出ますでしょうか。
エラーが出ないようでしたら、モジュールのインストールの問題ではなく、Class::DBIの使い方の問題のような気がします。
Perlモジュールの入っている場所を指定していないのが問題なのではないかと思います。
スタンダードプランということは自分のディレクトリの下にlibperlなどを作って、その中にPerlのモジュールをインストールしていると思いますので、スクリプトの先頭に
use lib ’/home/accountname/libperl’;
などを記述する必要があるでしょう。
(accountnameやlibperlは環境にあわせて変更してください)
回答ありがとうございます。
perl -MClass::DBI -e 1 を入力したところ、
Can’t locate Class/DBI.pm in @INC(@INC contains: /usr/local/lib/perl5/site_perl/5.8.4/mach /usr/local/lib/perl5/site_perl/5.8.4 /usr/local/lib/perl5/site_perl/5.005 /usr/local/lib/perl5/site_perl /usr/local/lib/perl5/5.8.4/BSDPAN /usr/local/lib/perl5/5.8.4/mach /usr/local/lib/perl5/5.8.4 .). BEGIN failed--compilation aborted
---------------------------------------
が表示されました。
また、CGI::Carp qw(fatalsToBrowser);を
使用したところ
Can’t locate version/vpp.pm in @INC (@INC contains: ./lib /usr/local/lib/perl5/site_perl/5.8.4/mach /usr/local/lib/perl5/site_perl/5.8.4 /usr/local/lib/perl5/site_perl/5.005 /usr/local/lib/perl5/site_perl /usr/local/lib/perl5/5.8.4/BSDPAN /usr/local/lib/perl5/5.8.4/mach /usr/local/lib/perl5/5.8.4 .) at lib/version.pm line 22.
Compilation failed in require at lib/Class/DBI.pm line 10.
BEGIN failed--compilation aborted at lib/Class/DBI.pm line 10.
Compilation failed in require at (eval 3) line 3.
...propagated at /usr/local/lib/perl5/5.8.4/CGI/Carp.pm line 314.
BEGIN failed--compilation aborted at lib/SQL.pm line 2.
Compilation failed in require at index.cgi line 5.
BEGIN failed--compilation aborted at index.cgi line 5.
が表示されました。