## 前提条件
- 初心者向け
- マックにはPHPが最初からはいっている(usr/bin/php)
- terminalで.bashrcを編集しないとMAMP導入時でもPHPパスはマックのものを利用している(パスが通っていない状態)
- MAMPにはpearがはいっているが有効化はされていない
- MAMPにはPHPUnitはインストールされていない
インストールする
作業
[1] terminalでMAMPのPHPのパスを通す
$ echo 'export PATH="/Applications/MAMP/bin/php/phpX.X.X/bin:$PATH"' >> ~/.bashrc
$ source ~/.bashrc
[2] MAMP/bin/php/phpX.X.X/confのpear.confを消す
[3] PHPUnitをインストールする
$ pear upgrade PEAR
$ pear config-set auto_discover 1
$ pear install pear.phpunit.de/PHPUnit-3.7.32
ひっかかりやすい所
- PHPUnitはMAMP下にインストールする(
/Applications/MAMP/.../php
)のですが、MACには最初からPHPがはいっている(/usr/bin/php
)ので、cakephpが参照するPHPのパスをMACのPHPからMAMPのPHPに変更しないといけない。(.bashrcへの追記部分
) - PHPUnitをインストールする前にPEARを最新版に変更しないといけないが、MAMPのPEARをアップグレードする前にconfにあるpear.confを削除しないといけない。
- CakePHPとPHPUnit4(最新版)は互換性がないので、PHPUnit3.7系をインストールする必要がある(
install.../PHPUnit-3.7.32部分
)
mac x MAMP x cakePHP はこのように3重のトラップがあるので、扱いなれないうちは1つ2つクリアしていても他でひっかかっていて動作せず、「!?」となることが多いうえに、検索していくとどんどんやることが増えて混乱しがちだけれど、今回はこの方法で無事インストールできた。
さんざんいじった後なので、最初からインストールするにはもうすこし作業が必要かもしれない。(phpunit関連のchannelの登録3つとか。 )
用語メモ
-
.bash_profile は、システム起動時(ログイン時)に1回だけ実行されるシステム設定ファイル
-
.bashrcは、システム起動時(ログイン時)に加えてシェル実行時に毎回読み込まれる設定ファイル
http://maccle.com/php/mac-pear-path-env/ -
source XXXX で設定反映
-
which XXXX でパスの確認
-
作業手順はこのあたりが読みやすいが必要かどうかがわからない(チャンネルの登録等の試行錯誤)