リンク

yum でインストールするとき

yum install php-pear

にしないといけない。 yum intall pear ってしたらパッケージが見つからない。 不便。

プロキシサーバの指定

pear config-set http_proxy proxy.example.com:8080

認証付きの場合は、

pear config-test http_proxy http://username:password@proxy.server:8080

こんな感じで。

なお、この設定はユーザに紐付くので注意。

つまり、ユーザ user1 がこの設定をして、pear config-show したら、セットされているが、sudo pear config-show してもそこに値は入ってないはず。

pear install するときには特権が必要なので、最初から特権ユーザで作業するのが便利。

ベータ版を強制的にインストールする場合

時々、

No release with state equal to: 'stable' found for 'XML_Serializer'

などと表示されることがある。これをベータ版でいいからインストールしたいと言う場合は、次のようにする。

pear install XML_Serializer-beta

"-beta"を後につけるだけ。

リファレンス

 よく使うものだけ。 その他詳細は、pear helpで表示される

pearの引数説明
install指定するパッケージをインストール
listすでにインストールされているパッケージを表示
list-allすべてのパッケージを表示
upgradeレベルアップ
uninstallアンインストール
config-show設定値確認

pear 操作時のエラー(1)

とあるサーバに PEAR::DB をセットアップしようとしたときのこと。

組織内サーバで、プロキシを経由しないと外部への HTTP アクセスができないので、まずはそれを設定してから、

pear install DB

とすると、次のようなエラーが出てしまう。

Notice: Undefined variable: dorest in PEAR/Command/Install.php on line 1220
Notice: Undefined variable: latest in PEAR/Command/Install.php on line 1228
Notice: Undefined variable: latest in PEAR/Command/Install.php on line 1234
Warning: array_change_key_case(): The argument should be an array in PEAR/Command/Install.php on line 1234

正直、このエラーメッセージを見ても、何のことだかさっぱり分からない。

が、他の操作(ローカル)はできていて、外部にアクセスが必要な操作をしたとたんにこれだから、その辺に見当を付けて、まずはプロキシ設定をチェック。問題ないようだ。

次に、チャンネル関係。 当たり。

PHP のライブラリがあるパス(今回は /usr/local/lib/php)の下には、.channel というサブディレクトリがあり、その中にチャンネルの情報が納められている。

こいつがどうやらおかしいようなので、このディレクトリを丸ごと消してしまう(channel-update すれば再生成されるので問題ない)。

rm -rf .channels

そして、channel-update を実行する。

pear channel-update pear.php.net

これで、update に成功すれば、あとは install を続ければ OK。

しかし、このサーバの PHP は 5.2.11 を新規インストールしたばかりで、一度も PEAR を使ったことのない状態なんだが、それで channel 情報がおかしいって、どうなんだろうね。

pear 操作時のエラー(2)

インストール時、以下のようにパッケージが見つからないというエラーが出ることがある

pear install Mail
No releases available for package "pear.php.net/Mail"

いろいろ原因は考えられるが、インターネットへの接続に問題があることも疑うべき。

上記は、pear のプロキシ設定が入ってなかったのが原因。

pear config-set http_proxy proxy.example.com:8000

などとして設定をすれば解消した。


トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS