PEARアップグレードメモ

PEARのアップグレードメモより。


PHPXML-RPCを利用する場合,PEARパッケージのXML_RPCを使います。

現在、[Z]ZAPAnetサーチから[Z]ZAPAnetサーチ2.0へのアップグレードのため、いろいろと機能追加とバグ修正を行っています。



その時に、XML/RPC.phpがエラーを吐くことに気付きました。



XML/RPC.phpの該当エラー行を調べてみたところ…

「この行でエラーを吐くのなら、他の人も同じような問題があるのでは?」

と思い、配布サイトを調べに行きました。



最新バージョンが配布されていました。

「この前アップグレードしたばかりなのに?」



サーバーにインストールされているパッケージを調べてみました。

# pear list-upgrades

Available Upgrades (stable):

============================

Package Local Remote Size

PEAR 1.3.2 (stable) 1.4.9 (stable) 277kB

XML_Parser 1.0.1 (stable) 1.2.7 (stable) 12.7kB

XML_RPC 1.1.0 (stable) 1.4.8 (stable) 30kB
「あれ?全然アップグレードされていない…」

この前アップグレードしたはずなのに、なぜか古いままになっていました。



仕方なく、もう一度アップグレードしてみることに。

pear upgrade-all



downloading XML_RPC-1.4.8.tgz ...

Starting to download XML_RPC-1.4.8.tgz (30,376 bytes)

...done: 30,376 bytes

Segmentation fault
最後の行に「Segmentation fault」と表示されていたことを見逃していたことに気付きました。

仕方なく一つずつ順番にアップグレード。



ところが「PEAR」のところで…

pear upgrade PEAR

downloading PEAR-1.4.9.tgz ...

Starting to download PEAR-1.4.9.tgz (283,443 bytes)

..................................................done: 283,443 bytes

requires package `PEAR' >= 1.3.3

PEAR: Dependencies failed
と表示され、PEARが1.3.3でないとアップグレードできないようでした。

とりあえず、1.3.3にアップグレード

pear upgrade PEAR-1.3.3

downloading PEAR-1.3.3.tgz ...

Starting to download PEAR-1.3.3.tgz (103,320 bytes)

........................done: 103,320 bytes

upgrade ok: PEAR 1.3.3
そして最新版にアップグレード。

pear upgrade PEAR


アップグレードが終了したので、RPC.phpを使ったスクリプトをもう一回実行。

今度はエラーを吐かないことが確認できました。



完了。