Tech エントリー[プログラミング / ライブラリ・モジュール]

Perl のモジュール活用

あとで読む コメント (0) トラックバック (0) Atom/RSS

モジュールの一覧化

モジュールのあるなしを調べる際に、PHP でいうところの phpinfo() のような関数があると便利なんですが、どうやら標準ではなさそう

[J] Perl で phpinfo() のような処理をする - Jamz (Tech)

HTML::Perlinfo などの外部モジュール (cpan モジュール) が別途必要なため、cpan install や make ができない場合はちょっとつらい。 HTML::Perlinfo は Module::CoreList や App::Info などを参照 App::Info は Module::Build を参照... 面倒なので
cpan install HTML::Perlinfo
HTML::Perlinfo をインストールしてみたが以下のようなエラーがログに載ってきてうまく動作しない。
[Wed Feb 20 16:21:29 2008] [error] [client 192.168.0.24] [Wed Feb 20 16:21:29 2008] perlinfo.cgi: Use of uninitialized value in concatenation (.) or string at /usr/lib/perl5/site_perl/5.8.6/HTML/Perlinfo/Apache.pm line 87.
[Wed Feb 20 16:21:29 2008] [error] [client 192.168.0.24] [Wed Feb 20 16:21:29 2008] perlinfo.cgi: Use of uninitialized value in concatenation (.) or string at /usr/lib/perl5/site_perl/5.8.6/HTML/Perlinfo/Apache.pm line 87.
[Wed Feb 20 16:21:29 2008] [error] [client 192.168.0.24] [Wed Feb 20 16:21:29 2008] perlinfo.cgi: Use of uninitialized value in concatenation (.) or string at /usr/lib/perl5/site_perl/5.8.6/HTML/Perlinfo/Apache.pm line 87.
[Wed Feb 20 16:21:29 2008] [error] [client 192.168.0.24] [Wed Feb 20 16:21:29 2008] perlinfo.cgi: Use of uninitialized value in concatenation (.) or string at /usr/lib/perl5/site_perl/5.8.6/HTML/Perlinfo/Apache.pm line 87.
[Wed Feb 20 16:21:30 2008] [error] [client 192.168.0.24] malformed header from script. Bad header=<!DOCTYPE html PUBLIC "e;-//W3C/: perlinfo.cgi

Perlの標準モジュール一覧

Perlの標準モジュール(コアモジュール)の一覧とか,あるモジュールがいつ標準モジュールに採用されたかとかってみんなどうやって確認しているんだろうと思ってたんですが,Module::CoreListなんてのがCPANにあったのね。

deq blog

Perlの標準モジュール一覧 - コメント

Perlのバージョンごとの標準モジュール一覧は Rafaël Garcia-Suarez / perl - search.cpan.org (http://search.cpan.org/dist/perl/) でバージョンを切り替えて見てました。

Perlの標準モジュール一覧 - deq blog

[perl]標準モジュールライブラリを調べる方法

標準で添付されているPerlモジュールライブラリの一覧を見たいと思って調べてみた。

$ man perlmodlib

[ヅラド]

Perl の標準モジュール

マジレスすると「それ Module::CoreList でできるよ」ってことで。

TokuLog 改め だまってコードを書けよハゲ

そのほか簡易的な方法として、以下のようなコードでも一覧できるが ... 見た目がいまいち。
print "Content-type: text/plain\n\n";
print `perl -v`;
print `perl -V`;
print `find \`perl -e 'print "@INC"'\` -name '*.pm' -print`;
先のエントリー ([J] Perl で phpinfo() のような処理をする - Jamz (Tech)) にも掲載したが、以下のスクリプトが一番よさそう。

サーバーアナライザー - futomi's CGI Cafe

use でロードできるかどうかの実際の処理については以下のスクリプトが使える。

モジュール検査|CGI配布サイトAppsPage

スクリプトに以下を埋め込んでおくとよさそう。
use CGI::Carp qw(fatalsToBrowser);

すぐに使えるCPANモジュール

頭にこの1行を書いておくだけで、実行中にエラーが出ると、500メッセージの変わりに親切なエラーメッセージを表示してくれるようになる。設置するとき足りないモジュールを探すのに便利だ。

ねこトトラ

おまけ

モジュールのインストールについて

基本は cpan install もしくは perl Makefile.PL make make install だが XS インターフェースを利用していないモジュールであれば任意の場所に配置し、use lib qw(./lib); などで利用が可能。

モジュールのインストールについてのメモ

XS インターフェース

あとで読む コメント (0) トラックバック (0) Atom/RSS
投稿: 2008年02月20日 15:39 / 最終更新: 2008年02月21日 15:33

» JavaScript のコーディング規約 (コーディングスタイル)
« デブサミ 2008 二日目の感想とか

タグ (関連キーワード)

トラックバック


コメント (投稿する)

コメント投稿





エントリー検索



最近のエントリー




テクノラティプロフィール

フィードメーター - Jamz Update (all blogs)

スカウター : Jamz

awasete.oshira.se

あわせて読みたい

track feed
SEO対策 | ブログパーツ


イベント情報

LL魂
08月04日(土)開催 参加予定


クリエイティブ・コモンズ・ライセンス
このブログは、次のライセンスで保護されています。 クリエイティブ・コモンズ・ライセンス.

テクノラティプロフィール