perldocって、Perlのマニュアルのようなものだと思うのですが、perlとか、perldoc

などと基本的なことを打っても、No documentation found for〜というエラーメッセージが出ます。

CGIやopenなど、表示されるものもたまにあります。これは異常でしょうか?
どうすれば、普通にいろいろ表示されるようになるのでしょうか。

ちなみに、Perlは勉強しはじめたばかりで、しかも、UNIXの操作には慣れてません。
環境は、Mac OSX v10.5.1, Perl v5.8.8, Perldoc v3.14です。

回答の条件
  • 1人2回まで
  • 登録:2007/12/15 17:44:58
  • 終了:2007/12/19 13:36:52

ベストアンサー

id:tombe No.1

tombe回答回数38ベストアンサー獲得回数72007/12/17 10:42:31

ポイント60pt

まず以下のコマンドを打ってみてください。

perldoc perldoc

perldoc の使用法が表示される筈です。これがエラーになるようなら異常ですが、CGIやopenが表示されているので恐らく大丈夫だと思います。

以下、和訳のページです。

perldoc - Pod 形式の Perl ドキュメントの検索

ほとんどのオプションは通常必要ないので、良く使いそうなケースを簡単に3つ挙げます。


(1)モジュールやプラグマの検索。

perldoc CGI

オプション無しで検索した場合は、モジュールやプラグマが検索されます。

perlのプログラムの中で use ~~~; と書く名前、と憶えておくと良いでしょう。(厳密には若干違いますが)


(2)組み込み関数の検索

perldoc -f push

-fオプションで検索した場合は、perlの組み込み関数が検索されます。

逆に言うと、-fオプションを付けないと、組み込み関数は検索されません。

duck75さんが戸惑っているのは、多分これだと思います。


(3)キーワード検索

perldoc -q shuffle

perlfaq(FAQ:よくある質問と回答)というドキュメントの中からキーワード(正規表現が使える)を検索します。

漠然と何か知りたい場合に使いますが、英語がベースなのであまり期待しない方が良いです。


注意しないといけないのは、同じキーワードでも(1)と(2)で表示される内容は違います。

(1)で open を検索するとopenプラグマが検索されて、(2)で open を検索するとopen関数が表示されます。

id:duck75

大変に分かりやすく、詳しい解説、ありがとうございます。

いろいろと勉強になります。

質問に一応書いたつもりなんですが、perldoc perldocと打ってもエラーになります。

そして、「初めてのPerl」の最初に、perldoc -u -f atan2と打てと書いてあるので打ったのですが、これもエラーでした。

No documentation found for "perlfunc".となります。

2007/12/17 22:44:07
  • id:b-wind
    本質的な解決ではないけど、このあたりのサイトで代用してしまう手はありますね。
    http://perldoc.jp/docs/modules/
    http://search.cpan.org/
  • id:duck75
    id:b-windさん
    ありがとうございます。
    そんな風にするしかなさそうですね。
  • id:tombe
    tombeです。
    質問文を理解できていませんでした。すみません。
    b-windさんのコメントにもあるように、pelrdocを使うより普通にネットで検索した方が早くて日本語で適切な結果が得られると思いますが、一応perldocの正常化という意味でコメントします。
    試しに、以下のコマンドを打ってみてください。
    perldoc -v perldoc

    これはperldocがどういう挙動をしているか、どこのディレクトリを検索しているかの詳細情報を表示してくれます。
    ちなみに、私のFreeBSD環境では以下のメッセージが表示されました。
    --------------------
    Ending switch processing. Args are [perldoc] with 0 errors.
    /usr/local/bin/perldoc => Pod::Perldoc v3.14

    Formatter class Pod::Perldoc::ToMan successfully loaded!
    Will format with the class Pod::Perldoc::ToMan
    Searching for perldoc
    Looking for perldoc in /usr/local/bin /usr/local/lib/perl5/site_perl/5.8.8/mach /usr/local/lib/perl5/site_perl/5.8.8 /usr/local/lib/perl5/site_perl /usr/local/lib/perl5/5.8.8/mach /usr/local/lib/perl5/5.8.8 . /usr/local/lib/perl5/5.8.8/BSDPAN /usr/local/lib/perl5/5.8.8/BSDPAN/.. /sbin /bin /usr/sbin /usr/bin /usr/games /usr/local/sbin /usr/local/bin /usr/X11R6/bin
    Found as /usr/local/lib/perl5/5.8.8/pod/perldoc.pod
  • id:duck75
    tombeさん、再び、ありがとうございます。
    perlcod -v perldoc打ってみたら以下のようになりました。
    最後の一文がエラーみたいですね。

    Ending switch processing. Args are [perldoc] with 0 errors.
    /usr/bin/perldoc => Pod::Perldoc v3.14

    Formatter class Pod::Perldoc::ToMan successfully loaded!
    Will format with the class Pod::Perldoc::ToMan
    Searching for perldoc
    Looking for perldoc in /usr/bin /System/Library/Perl/5.8.8/darwin-thread-multi-2level /System/Library/Perl/5.8.8 /Library/Perl/5.8.8/darwin-thread-multi-2level /Library/Perl/5.8.8 /Library/Perl /Network/Library/Perl/5.8.8/darwin-thread-multi-2level /Network/Library/Perl/5.8.8 /Network/Library/Perl /System/Library/Perl/Extras/5.8.8/darwin-thread-multi-2level /System/Library/Perl/Extras/5.8.8 /Library/Perl/5.8.6 /Library/Perl/5.8.1 . /opt/local/bin /opt/local/sbin /usr/bin /bin /usr/sbin /sbin /usr/local/bin /usr/X11/bin
    No documentation found for "perldoc".
  • id:tombe
    Macは知らないので何とも言えませんが、ぱっと見た感じでは、もっともらしい結果が出てますね。
    システムの異常でなく、単純にドキュメントが無いだけでは?と思ってググってみました。

    http://www.perlmonks.org/?node_id=408417
    http://forums.macosxhints.com/archive/index.php/t-27889.html

    英語は苦手ですが、何となく以下のような事を書いてます。
    ・デフォルトではperldocの一部のキュメントしかインストールされてない。
     (一般ピーポーには必要無いから)
    ・方法1:自分でPerlをインストールし直す。
    ・方法2:XCodeとかいうのをインストールする。

    方法1はOS環境を壊す可能性があるので止めた方が良いでしょう。
    XCodeにはPerl以外にもgccとかの開発用ツールが入ってるみたいなので、これからプログラミングを始めるならあった方が良いかも。
    XCodeのインストール

    http://www.kadoppe.net/2007/12/mac-os-xleopardxcode.html
  • id:duck75
    tombeさん、ありがとうございました!

    上記の方法でXcodeをインストールしたら解決しました。\(^o^)/

この質問への反応(ブックマークコメント)

トラックバック

  • Leopard に Xcode をインストール 初めての Perl 第9章の練習問題で、perlfunc.pod ファイルを探せ、とあるが、 $ perldoc -l perlfunc をしても、 No documentation found for "perlfunc". と見つからない。 htt
「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません