2008年11月24日

WindowsでPerlを使っている人は大抵の場合、ActivePerlを使っていることでしょう。

ActivePerlにはPPMという高機能なPerlパッケージマネージャーが付属しています。
しかし、使い方がいまいち判り辛かったり、ほしいモジュールが全然なかったりして「価値あるの?」って感じでしたが、今ではPPMレポジトリが活性化してきたのか、適切な設定を行うことで大抵のCPANモジュールが手に入るようになりました。

Windowsには他に、CPANのモジュールを簡単に入れられるようにgccベースのStrawberryPerl(ActivePerlはVC+nmake)というのも存在しますが、実行環境を整えるのがめんどくさいのと、makeに成功するのか実際にやってみるまで分からないので、構築とかが趣味じゃない人はActivePerlを素直に使いましょう。
PPMにはバイナリ化されたモジュールがアップロードされていて、makeする必要ないので存在すればほぼ使えます。ただし、やっぱりCPANよりはモジュール数は劣ります。

そんなわけで、これだけ覚えておけば大丈夫なPPMの使い方をご紹介します。

とりあえずActivePerlインストール

ActivePerlやPPMは日々進歩しています。
とりあえず、下記URLから最新のActivePerlをインストールしましょう(現時点では5.10.0 build 1004が最新)
http://downloads.activestate.com/ActivePerl/Windows/5.10/

インストールは簡単です。
zipを展開するか、インストーラーでnextをクリックするだけです。
自動的に環境設定がなされるインストーラーをお勧めします。
インストーラーなら、Perlの実行パスも自動的に追加されます。

PPMを起動する

さて、Perlのインストールを終えたあなたは早速普段使うモジュールをインストールしたいと思うでしょう。
慌てずに、コマンドプロンプトから

C:\> ppm

と入力するか、スタートメニュー->ActivePerl->Perl Package Managerを実行しましょう。

すると、PPMのGUIが立ち上がります。
おもむろに[Ctrl+1]を押し、レポジトリにあるすべてのモジュールを表示することにします。

モジュールの検索

LWPを使用してhttpsに接続できるようにしたいと考えます。
しかし、どうやらCrypt::SSLeayモジュールはインストールされていないようです。
慌てずに、PPMのサーチボックスにCrypt-SSLeayと入力してみましょう。(PPMでは::は-として扱います) しかし!!PPMのレポジトリにも存在しないではないか!!

レポジトリの追加

「ああ、やはりWindowsでPerlを使うなんて土台無理な話だったのだ。。。」

などと落ち込む必要はありません。
慌てず騒がす、[Ctrl+P]を押します。
するともう一つのウィンドウが現れます。これは黎明期に行く先が分からずに迷える我々に大いなる助けをもたらす賢者のようなものです。
「Repositories」タブにフォーカスを当てましょう。
ここまでで賢明な読者は気付いたことででしょう。つまり、一人に任せるのではなく、皆で分かち合おうということです。
下の方にある「Suggested」コンボボックスにあるレポジトリを「Add」ボタンで一つずつ追加していきましょう。
これであなたにはさらに(恐らくは)数千人以上の恩恵を得ることが可能になりました。

モジュールのインストール

さて、すべてのレポジトリを追加したら、もうこのウィンドウは邪魔なだけなので閉じてしまいます。
それでは、先ほどと同じとうにサーチボックスにCrypt-SSLeayと入力してみましょう。
今度はどうでしょうか?「bribes」と「uwinnipeg」の二つから見つかりましたね!
バージョンが同じならばどちらも同じものです。好きな方をインストールしましょう。

インストールは極めて簡単です。
必要なモジュールを右クリックして追加するか、ちょっとわかりにくいですが、モジュールをフォーカスし、右上の方にある「箱に+」のついたボタンを押します。
この次点ではまだインストールされません。
現在はネットショップで言う「カートに入った」状態です。
このモジュールを「購入」するには右上にある「→」ボタンをクリックします。
メッセージボックスで、「インストールするけどいい?」と聞いてくるのでOKを押すとインストール開始します。

インストールファイルの監査

あまり必要ないかもしれませんが、インストール後にはverifyを行いましょう
これにより、ファイルが壊れていないか、変更されていないかをチェックします。

verifyはメニューバーのFile->Verify Packagesから行います。
GUI上からはすべてのパッケージに対してしか行えませんが、特に問題はないでしょう。

PODをHTMLでみる

PPMはインストールされたモジュールのPODを静的にHTML化してくれます。
HTML化されたPODは見やすいです。使い勝手はJavaDOCに酷似していますが見た目はもうちょっとスタイリッシュです。

スタートメニュー->ActivePerl->Dcumentetionで表示されます。
ブラウザのお気に入りにでも入れておけばいつでも参照できて便利です。

tcoolレポジトリの追加

上記のGUIでの操作を覚えておけば基本的には問題はないと思いますが、 もうひとつだけ「tcool」レポジトリを追加しておきましょう。

PPMを起動し、[Ctrl+P]で「Repositories」タブに移動し、「Name」に「tcool」、「Location」に「http://ppm.tcool.org/archives510/」をそれぞれ入力し、「Add」ボタンで追加します。

ただし、このままでは実はモジュール群が読み込まれません。「tcool」にはxmlが用意されていないためです。
読み込むためには、コマンドプロンプトで下記のコマンドを入力します。

C:\> ppm repo sync

これで「tcool」のモジュールがPPMに読み込まれました。

コマンドラインPPM

ちなみに、PPMのコマンドライン版にも少し触れておきます。

C:\> ppm-shell

とすれば、ppmの対話シェルが立ち上がります。

ここではインストールされているモジュールをすべて最新版にアップグレードしましょう。

ppm> upgrad

で、アップグレードされるパッケージが表示されます。
アップグレードを実行する場合は以下のように「i」オプションを付けます。

ppm> upgrad -i

あとは

ppm> h

などとすれば、ヘルプが表示されます。

最後に

書いてみたら、字ばかりになってとてつもなく読みにくくなってしまいましたが、とりあえずひとまずはこれで大抵のモジュールは手に入ると思います。

--追記: 2008/12/22--

因みに古いbuildではGUI版のPPMがまともに動かないっぽいので、アップグレードができない環境の場合はコマンドラインからレポジトリを追加します。

ppm> repo list

とすれば、現在登録されているレポジトリのリストが表示されます。(なぜか半角カナ文字のテーブルですが全力で見逃します)

レポジトリの追加は以下のようにやります。

ppm> repo add <url> [<name>]

<url>にレポジトリのURLを入れます。<name>を指定すれば任意の名前で登録できます。

こっそり、自分の登録してあるレポジトリを晒しておきます。

bribeshttp://www.bribes.org/perl/ppm
log4perlhttp://log4perl.sourceforge.net/ppm
trouchellehttp://trouchelle.com/ppm10/
uwinnipeghttp://cpan.uwinnipeg.ca/PPMPackages/10xx/
wxansihttp://www.wxperl.co.uk/repository/ansi
wxperlhttp://www.wxperl.co.uk/repository

Enjoy Perl on Windows!!

トラックバック一覧

1. Active Perl 5.10でスクリプトをexe化する ver.0.2  [ にひりずむ::しんぷる ]   2008年11月27日 22:40
かなり前に書いた、Active Perl 5.10でスクリプトをexe化する。という記事を蒸し返してみます。 前回の記事の通りにPPMにレポジトリを追加しておけば、超絶簡単にPerlスクリプトをexe化できます。

コメント一覧

1. Posted by DQNEO   2008年12月01日 07:11
こんにちわ。

>「Suggested」コンボボックスにあるレポジトリを「Add」ボタンで一つずつ追加していきましょう。

とあるのですが、
画面にはActiveStateとuwinnpegの2つしかなく、Addボタンを押しても何も起こりませんでした。

もしかしたら、どこかでレポジトリのURLを自分で見つけて、入力しないといけないのでは?
2. Posted by xaicron   2008年12月11日 00:41
>DQNEOさん
すみません。コメント気づきませんでしたー。

ActivePerlのバージョンが古いとちゃんと動作しなかった気がします。
最新のbuild 1004なら大丈夫だと思います。
C:\>perl -v
でバージョンを確認してみてください。

一応、下記にURLを載せておきます。

bribes : http://www.bribes.org/perl/ppm
log4perl : http://log4perl.sourceforge.net/ppm
trouchelle : http://trouchelle.com/ppm10/
uwinnipeg : http://cpan.uwinnipeg.ca/PPMPackages/10xx/
wxansi : http://www.wxperl.co.uk/repository/ansi
wxperl : http://www.wxperl.co.uk/repository
3. Posted by DQNEO   2008年12月22日 02:49
>xaicronさま
ご親切にありがとうございます!
調べたら、build 1001でした。
私の環境が古いのですね。

教えていただいたURLで追加してみます!

4. Posted by xaicron   2008年12月22日 22:42
コマンドラインからの登録方法を追記しておきました。
よかったら参考にしてみてください。
5. Posted by nama bayi laki-laki   2014年02月21日 05:47
5 私はかなり理解していないが、このブログは非常にシンプルで興味深い情報ですが。ありがとう
6. Posted by http://pandoraukuk.pornblogy.com/   2014年02月26日 23:21
にひりずむ::しんぷる - ActivePerl - PPMを手っ取り早く使いこなす
7. Posted by http://www.ifacare.co.uk/   2014年03月13日 10:17
にひりずむ::しんぷる - ActivePerl - PPMを手っ取り早く使いこなす
http://www.ifacare.co.uk/ http://www.ifacare.co.uk/
8. Posted by http://www.clicfarmacia.com/   2014年03月13日 10:17
にひりずむ::しんぷる - ActivePerl - PPMを手っ取り早く使いこなす
http://www.clicfarmacia.com/ http://www.clicfarmacia.com/
9. Posted by http://www.wellbeingthatworks.co.uk/   2014年03月13日 10:18
にひりずむ::しんぷる - ActivePerl - PPMを手っ取り早く使いこなす
http://www.wellbeingthatworks.co.uk/ http://www.wellbeingthatworks.co.uk/
10. Posted by http://uk.weddingsbyeternal.com/   2014年03月13日 10:18
にひりずむ::しんぷる - ActivePerl - PPMを手っ取り早く使いこなす
http://uk.weddingsbyeternal.com/ http://uk.weddingsbyeternal.com/
11. Posted by あひる   2014年03月31日 17:46
初めまして。ppmの記事が大変参考になりました。ありがとうございます。
じつは今、新しいPCにperlのモジュールインストールをしているのですが

GD::SecurityImage::AC
Image::Magick

この二つのモジュールのリポジトリのありかがわかりません。
もしご存知でしたら教えていただけませんでしょうか。

os : windows8.1
perl : active_perl 5.16.3
ちなみにppmはGUIを使っています。

よろしくお願いします。
12. Posted by http://maternitydresses.dietblog.com/   2014年04月18日 15:20
にひりずむ::しんぷる - ActivePerl - PPMを手っ取り早く使いこなす
13. Posted by saatnya   2014年06月18日 03:31
良いニュースは、ありがとうございました!
14. Posted by kata kata cinta   2014年06月19日 08:59
非常に興味深い記事、ありがとうございました
15. Posted by resep kue   2014年07月14日 03:11
素晴らしい記事、ありがとうございました
16. Posted by エルメス 新作 トートバッグ   2014年08月29日 10:44
http://www.manisasutbirligi.org/UserFiles/buying/hermes-bags-153.htmlエルメス 中古 通販
エルメス 新作 トートバッグ http://www.manisasutbirligi.org/UserFiles/buying/hermes-bags-307.html
17. Posted by jasa fotocopy murah   2014年09月25日 19:05
書き込みは、注意することは興味深い
18. Posted by 三角ビキニ   2014年12月26日 01:36
18630前、So配「舞橋ト、タル前、So配「舞橋
19. Posted by お腹・太モモ・お尻が気になる水着   2015年03月24日 12:10
日て28日るソ火)たンアリ
20. Posted by 水着 ビキニ   2015年04月06日 00:22
に配日て28日
21. Posted by kata kata galau   2015年06月29日 17:48
のような有用な記事を投稿し、共有するためにありがとうございました。私はいつもここにいくつかの他の情報を知りたいと思いました。
22. Posted by Kata Kata Remaja   2016年10月26日 11:37
私はここでの情報は、私はどこにも見つけたことほとんど完了したことを言わなければなりません。私は間違いなく戻ってきて、後で表現するためにこれをブックマークするのです。
23. Posted by MURNI JAYA Printing   2017年09月27日 11:29
私はあなたが提示情報を愛するの

コメントする

名前:
URL:
  情報を記憶: 評価:  顔   星
  絵文字
 
 
プロフィール

Perlが少しだけ出来る気になってます。
JavaScriptはよくわかりません。
Rubyもちんぷんかんぷんです。
Pythonは難しいです。
ActionScript勘弁してください。
Javaあばばばばば。
低級言語できません。

github
記事検索
  • ライブドアブログ