レンタルサーバでPlagger #1 モジュールインストール

CPAN shellの使い方は簡単です.ひとつひとつソースを持ってきて入れるよりは(少なくとも私は).以前ちょこっと書いているのでそれが参考になるかもしれません.

CPAN.pm初心者メモ - LAPISLAZULI HILL#Hatena

モジュールインストールの手始めに

ひとまずcapn shellのメッセージに表示されている.Bundle::CPANをインストールしてみましょう.このBundle::で始まるものはそのモジュールを使うのに便利なモジュールなどをいっしょにインストールしてくれるというシロモノです.ひとまずこのBundle::CPANの詳細について調べてみましょう.i Bundle::CPANと入力してみましょう.

Bundle id = Bundle::CPAN
CPAN_USERID ANDK (Andreas J. Koenig )
CPAN_VERSION 1.85
CPAN_FILE A/AN/ANDK/Bundle-CPAN-1.85.tar.gz
MANPAGE Bundle::CPAN - A bundle to play with all the other modules on CPAN
CONTAINS Digest::SHA Module::Signature File::Temp File::HomeDir File::Spec Compress::Zlib Archive::Tar Archive::Zip Bundle::libnet Term::ReadKey Term::ReadLine::Perl YAML Text::Glob Module::Build CPAN
INST_FILE /yourhome/.cpan/Bundle/CPAN.pm
INST_VERSION 1.85

Bundle::CPANについて情報が表示されたはずです.コマンドに関してはhelpと入力されるので参考に.続けてinstall Bundle::CPANと入力します.自動的に依存関係を確認してインストールしてくれます.

で,やってみるのですが失敗しました(笑).これは自分でも前にはまったような気がしますがhttp://www.bugzilla.org/docs/2.22/html/nonroot.htmlで書いてあるmakepl_argの設定が拙いようです.ドキュメントに書いてあるように設定をしましょう.

o conf makepl_arg "LIB=~/perl/lib INSTALLMAN1DIR=~/perl/man/man1 INSTALLMAN3DIR=~/perl/man/man3"
o conf commit

これでinstall Bundle::CPANを実行してみます.どうでしょうか.エラーは多々出るもののCPAN.pm自体のアップデートは成功したようです.処理が終わったらプロンプトに戻るのでいまインストールしたCPANモジュールを有効にするためにreload CPANと入力してください.cpan shellもコマンドの履歴が出るようになり,便利になります.ほかにもBundle::LWPを入れたりしてみました.

気になる点があります.途中signatureの検証(?)ができていないようです.使っているサーバではpgpがないのでCrypt::OpenPGP(Pure-Perl OpenPGP implementation)を使えばいいようです.それに必要なCrypt::RSAというモジュールで依存が自動ではほとんど解決できず下記のような表示の後に出てくるモジュールをすべていれたらインストールできました.

Unsatisfied dependencies detected during [V/VI/VIPUL/Crypt-RSA-1.57.tar.gz]

これでsignatureの検証ができるはずです.(追記)これだけではcpan shellでのinstallで認証してくれません.どうやったらいいのかは調査中.(追記2)gpgコマンドがないというエラーが出てるだけで認証はできてる模様.

cpan shellでのインストールは依存関係は基本的には解消してくれるはずですが万能ではありません.ログを見て何が足りないのかを調べてそれを先にインストールしましょう.Can't locate .pm in @INC (@INC contains:などというのはモジュールが見つからなかった場合にメッセージとして出ます.