[PHP-users 1762] Re: PEAR and portble library

Kiyotaka Doumae php-users@php.gr.jp
Mon, 03 Sep 2001 19:51:05 +0900


堂前です。
追加というか補足というかなんというか。

In message "[PHP-users 1761] Re: PEAR and portble library",
Kiyotaka Doumae wrote...
》CVSで独立したほうのpearをご覧になられたのでしたらお気づきかもしれませ
》んが、一部のディレクトリにはpackages.xmlというファイルが入っています。
》どうやらこれがパッケージングの情報を持っているようで、これとpearという
》コマンドを使うことで、パッケージング、インストールが行なえるように
》なります。

だいぶ前のcvsの中味なので状況は変わっているかもしれませんが、たとえば
pear/Net_Ping/
の中にはpackage.xmlというファイルがあります。

中を覗いてみると、ライブラリの名前、作者の名前、コピーするファイル、
コピー先などが列挙されています。

ここで
pear package package.xml
とやってみると、
Ping-0.1.tgz
というファイルが生成されます。
このファイル名はpackages.xmlの中に書かれた情報に従って生成されます。

次にrootになって
pear install Ping-0.1.tgz
と実行すると、パッケージの中味が /usr/local/lib/php/Ping.php (標準なら)
としてインストールされます。
Net_Pingはファイル一つだけのプログラムのため、特にディレクトリは作って
いないようですが、複数のファイルからなるライブラリの場合はディレクトリ
を作ることもできるようです。

また、このときに/var/lib/phpになにかのリストが書かれるようなのです。
(ただし何もしていない状況ではディレクトリが存在しないので、ファイルも
作られないのですが)


pearインストーラの実態は
/usr/local/lib/php/PEAR.php
/usr/local/lib/php/PEAR/*
にあるので、眺めてみるとなんとなく動作がわかるのではないかと思います。


私は途中で止まってますが……


_DON (堂前 清隆) ______________________v(. .)v_
mailto:don@don.am        
http://www.don.am/~don/    『ムチャじゃないもん!』
PGP fingerprint:                        (青山素子)
A920 DE27 3C98 A091 FD1E  D09D 2C4F 291E 50BC 4FD4
--------------------------------------------------