トップ 履歴 一覧 カテゴリ ソース 検索 ヘルプ RSS ログイン

ParlModule/PpmInstall

INDEX

PPMって

ActivePerl のパッケージマネージャー PPM (Programmer's Package Manager)。

CPANによるインストールと異なり、PPMでのインストールは、コンパイル済みバイナリモジュール(とスクリプト)をコピーするので、まず失敗することはないと思います。それでも失敗する場合は、ダウンロードの失敗(ネットワークの設定かリポジトリの設定)が原因となる。

また、多くのモジュールが用意されているが、CPANにしかなかったり、CPANの方が最新であったりするので、問題があれば、CPANでの方法も試してください。

PPM対話モード

コマンドプロンプトで、ppm と入力する。

C:\> ppm

PPMのヘルプを読むには、help コマンドを実行する。各コマンドのヘルプは、コマンド名を指定する。

ppm> help
ppm> help install

また、各PPMコマンドの処理は、コマンドプロンプトから直接実行することも出来る。例えば、インストールの場合は次のようになる。

C:\>ppm install Shell-Perl

 パッケージのインストール

PPM対話モードで、install コマンドを使いインストールするパッケージ名を指定する。依存関係がある物は必要に応じてインストールされる。

ppm> install Shell-Perl

最後に「Successfully installed 」といったメッセージが表示されれば成功。

パッケージ名の指定で、「Shell::Perl」を指定する際、「Shell-Perl」と「Shell::Perl」と2つの方法で指定できる。ハイフンで指定した場合は、一致するパッケージをインストールするが、コロンで指定した場合は、一度モジュールの検索を行い、該当するモジュールが1つであればインストールを行い、複数ある場合は、候補の一覧を表示する。

 パッケージの検索

パッケージ名に「Shell」が含まれているものを検索する。

ppm> search Shell

分類に「compress」が含まれているものを検索する。

ppm> search ABSTRACT=compress

 パッケージの一覧

インストールしたパッケージの一覧を取得する。

ppm> query *

 パッケージの更新

インストールされているパッケージを更新を確認する。対象のパッケージ名やインストールされたパッケージの番号を指定する。指定しなかったり、アスタリスクを指定するとすべてが対象になる。

ppm> upgrade
ppm> upgrade Shell-Perl

古くなったパッケージを更新する場合は、-install オプションを追加する。

ppm> upgrade -install
ppm> upgrade -install Shell-Perl

 パッケージの削除

remove コマンドで入れたパッケージを削除する。

ppm> remove Shell-Perl

 パッケージの説明

describe(desc) コマンドでパッケージの情報が取得できる。インストールの有無にかかわらずリポジトリから最新の情報を持ってくる。

ppm> desc Compress-Zlib
====================
    Name: Compress-Zlib
 Version: 2.007
  Author: Paul Marquess (pmqs@cpan.org)
   Title: Compress-Zlib
Abstract: Interface to zlib compression library
Location: bribes
Prerequisites:
       1. Compress-Raw-Zlib 2.006
       2. IO-Compress-Base 2.006
Available Platforms:
       1. MSWin32-x86-multi-thread
       2. MSWin32-x86-multi-thread-5.8
====================

 インストールされたパッケージの説明

properties(prop) コマンドでインストールされているパッケージの情報が取得できる。

ppm> prop Compress-Zlib
====================
    Name: Compress-Zlib
 Version: 1.33
  Author: Paul Marquess <pmqs@cpan.org>
   Title: Compress-Zlib
Abstract: Interface to zlib compression library
InstDate:  19:34:13 2002
Location:
http://ppm.ActiveState.com/cgibin/PPM/ppmserver-5.8-windows.pl?urn:/PPMServer
====================

NAT, PROXY 環境下での利用

ネットワーク接続の関係で設定が必要なもの

 passive FTP に設定

パッシブモードで動かす場合、環境変数 FTP_PASSIVE に 1 を設定する。(たぶん。FTP使ってる様子ないけど)

 プロキシの対応

HTTPやFTPでプロキシを使う必要がある場合は、環境変数に必要な情報を設定する。

使用するHTTPのプロキシサーバを HTTP_PROXY で指定する。また、認証がある場合は、 HTTP_PROXY_USER, HTTP_PROXY_PASS にユーザ名とパスワードを指定する。

リポジトリ

PPM はリポジトリに設定されているサーバーにアクセスを試みて、パッケージを取得します。デフォルトで ActiveState のパッケージサーバーを参照するようになっている。

 リポジトリの確認

現在登録されているリポジトリは、repository(rep) コマンドをオプションを付けず実行すると表示される。

ppm> rep
Repositories:
[1] ActiveState Package Repository

個々のリポジトリの詳細を取得する場合は、describe(desc) オプションを追加する。

ppm> rep desc ActiveState
Describing Active Repository 1:
    Name: ActiveState Package Repository
Location: http://ppm.ActiveState.com/PPM/ppmserver-5.8-windows.plex?urn:/PPM/Server/SQL
    Type: PPMServer 3.0

 リポジトリの追加と削除

リポジトリの追加は、rep add を使用する。登録する名前とロケーション(サーバのURLかローカルのパス)を指定する。

ppm> rep add example http://www.example.com/
Repositories:
[1] ActiveState Package Repository
[2] example

リポジトリの削除は、rep del を使用する。削除するリポジトリの名前か番号を指定すると削除される。

ppm> rep del example
Repositories:
[1] ActiveState Package Repository

 リポジトリの優先順位と有効・無効の設定

各リポジトリに付けられている番号は、参照する優先順位で、小さい順番に参照される。また、番号が振られていないリポジトリは参照されない。

リポジトリを無効にする場合は、rep off を使用し、対象のリポジトリの名前か番号を指定する。

ppm> rep off example
Repositories:
[1] ActiveState Package Repository
[ ] example

リポジトリを有効にする場合は、rep on を使用し、対象のリポジトリの名前を指定する。

ppm> rep on example
Repositories:
[1] ActiveState Package Repository
[2] example

リポジトリの優先順位は、rep up と rep down で変更する。変更するリポジトリの名前か番号を指定する。

ppm> rep up example
Repositories:
[1] example
[2] ActiveState Package Repository
ppm> rep down example
Repositories:
[1] ActiveState Package Repository
[2] example

リポジトリを名前で指定するとき、正確な名前以外に、先頭の数文字だけ指定することも出来る。

 ローカルのリポジトリ参照設定

ローカルのディレクトリにあるパッケージを参照する場合、リポジトリにローカルのディレクトリを追加する。

ppm> rep add "LocalRepository" D:\Temp\ppd

もっとも、リポジトリを作らなくても、直接ファイルを指定してもインストールは出来る。

D:\Temp> ppm install ppd/Module-Name.ppd

リポジトリ一覧

主なPPMのリポジトリサイト

 ActiveState Package Repositry

言わずと知れた、ActiveState のパッケージリポジトリ。

パッケージのビルドステータスは、以下のページで確認できる。

 PPM Packages from the University of Winnipeg

Crypt関連、GD のモジュールなどはこちらのリポジトリを使用する。

 Bribes

スクリプトをEXE化するのに必要な PAR-Packer があるリポジトリ。RAR FAQ にも書かれている。上の theoryx5 にも PAR-Packer モジュールは入るようになったっぽい。

最終更新時間:2008年11月14日 16時48分00秒 指摘や意見などあればSandBoxのBBSへ。