MAMPのPEARを「ちゃんと」設定する方法(pearコマンドが動かないのを修正する方法)

最初にMAMPでインストールされたpearコマンドが動かない問題の修正。

インストールしただけでは、以下のエラーが出て動かない。

Notice: unserialize(): Error at offset 267 of 1141 bytes in Config.php on line 1050
ERROR: The default config file is not a valid config file or is corrupted.

これを修正するには、

/Applications/MAMP/bin/php/php5.3.6/conf/pear.conf

s:7:"php_dir"s:44:"/Applications/MAMP/bin/php/php5.3.6/lib/php";

s:7:"php_dir"s:43:"/Applications/MAMP/bin/php/php5.3.6/lib/php";

に修正する。
これでとりあえず動く。

次にMAMPでインストールされたPEARと、Macに最初から入っているPEARとごっちゃになっていて、ちゃんと動かない問題を修正。

それぞれのパッケージを混同しないように管理します。

MAMPでインストールされたPEAR

/Applications/MAMP/bin/php/php5.2.17/lib/php

/Applications/MAMP/bin/php/php5.3.6/lib/php

にパッケージが入っています。

それに対して、インストール済みのPEAR

/Users//pear/share/pear

にパッケージが入っています。

MAMP上のApacheで起動させたPHPは、上記の方を参照しているので、ホームディレクトリ配下のパッケージは参照してくれません。もし、両方で同じパッケージを参照したければ、

/Applications/MAMP/bin/php/php5.3.6/conf/php.ini

include_path = ".:/Applications/MAMP/bin/php/php5.3.6/lib/php"

に追加すれば良いです。

別々に管理する場合、

$ cd /Applications/MAMP/bin/php/php5.3.6/bin
$ ./pear -c ../conf/pear.conf 

として、confファイルを指定して起動すれば良いです。特定バージョンでの環境構築などの場合、こちらの方が便利かと思います。