miau's blog?

Net::Packet のインストールにハマったのでメモ

以前 libpcap(Ethereal とかの内部で使われてるやつ)で出力する .pcap ファイルを解析する Perl スクリプトなんてのを書いてたんですが、久々に使おうとしたら「Net::Packet がありませんよ」みたいなエラーが。そういえば先日 Perl 5.10 系に入れ替えて、必要なモジュールとか入れなおしてなかったなー。めんどいけど入れなおすかー。

・・・と気軽にやってみたら結構ハマったのでメモ。




■Perl 5.10 の PPM リポジトリは違うよ

以前は

ppm rep add http://theoryx5.uwinnipeg.ca/ppms/
ppm isntal Net-Packet

とかでいけたはずなんだけど、Perl 5.10 だとうまくいかない。これは 5.10 系のリポジトリが分かれているからで、

ppm rep add http://cpan.uwinnipeg.ca/PPMPackages/10xx/
ppm isntal Net-Packet

とすればいける・・・と思いきや、5.10 系のリポジトリには Net-Packet が置いていないらしい。まだパッケージ少ないのかな。

■theoryx5.uwinnipeg.ca の .ppd がおかしいよ

その他のリポジトリも探したけど見当たらない&コンパイルは面倒そうだったので、Perl 5.8 系に戻して再度インストール。先頭の手順でいけるはずなんだけど、

ppm install failed: Can't find any package that provides Net-Pcap for Net-Packet
Can't find any package that provides Class-Gomor-Hash for Net-Packet
Can't find any package that provides Net-Pcap for Net-Write

こんなエラーが。Class::Gomor::Hash なら最新版が入ってるけど?

どうやら http://theoryx5.uwinnipeg.ca/ppms/Net-Packet.ppd の中に

<DEPENDENCY NAME="Class-Gomor-Hash" VERSION="0,22,0,0" />

とか書いてるのが原因?Glass-Gomor-Hash じゃなくて Glass-Gomor って書かないとダメなのでは。

■trouchelle.com も併用するよ

http://trouchelle.com/ppm/Net-Packet.ppd のほうには上記のような変な記述はないみたいだから、こっちからインストールしようかなと思ったら、今度は

ppm install failed: Can't find any package that provides Net-Pcap for Net-Packet
Can't find any package that provides Net-Pcap for Net-Write

とか言われる。trouchelle.com には Net-Pcap 置いてないのね・・・。

結局リポジトリを以下の順で追加(逆だとダメなはず)してインストール、と。

ppm rep add http://trouchelle.com/ppm/
ppm rep add http://theoryx5.uwinnipeg.ca/ppms/
ppm isntal Net-Packet

Perl はこんな感じで依存モジュールのインストールが面倒だったりするのが嫌だなぁ。
posted at 13:59:42 on 2009-02-15 by miau - Category: Perl No Trackbacks - Permalink

TrackBack

このエントリにトラックバックはありません
現在トラックバックは受け付けていません。

Comments

No comments yet

Add Comments

現在コメントは受け付けていません。
お手数ですが、 こちら のコメント欄にでも記載していただければと思います。