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>を指定すれば任意の名前で登録できます。
こっそり、自分の登録してあるレポジトリを晒しておきます。
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 |
Enjoy Perl on Windows!!
トラックバック一覧
コメント一覧
>「Suggested」コンボボックスにあるレポジトリを「Add」ボタンで一つずつ追加していきましょう。
とあるのですが、
画面にはActiveStateとuwinnpegの2つしかなく、Addボタンを押しても何も起こりませんでした。
もしかしたら、どこかでレポジトリのURLを自分で見つけて、入力しないといけないのでは?
すみません。コメント気づきませんでしたー。
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
ご親切にありがとうございます!
調べたら、build 1001でした。
私の環境が古いのですね。
教えていただいたURLで追加してみます!
よかったら参考にしてみてください。
http://www.ifacare.co.uk/ http://www.ifacare.co.uk/
http://www.clicfarmacia.com/ http://www.clicfarmacia.com/
http://www.wellbeingthatworks.co.uk/ http://www.wellbeingthatworks.co.uk/
http://uk.weddingsbyeternal.com/ http://uk.weddingsbyeternal.com/
じつは今、新しいPCにperlのモジュールインストールをしているのですが
GD::SecurityImage::AC
Image::Magick
この二つのモジュールのリポジトリのありかがわかりません。
もしご存知でしたら教えていただけませんでしょうか。
os : windows8.1
perl : active_perl 5.16.3
ちなみにppmはGUIを使っています。
よろしくお願いします。
エルメス 新作 トートバッグ http://www.manisasutbirligi.org/UserFiles/buying/hermes-bags-307.html