MAMPを使用してos x Lionにphpunitをインストールしようとしています。/Applications/MAMP/bin/php/php5.4.4/lib/php に phpunit をインストールしました。
ターミナルで phpunit を実行すると、次のエラーが表示されます。
警告: require_once(File/Iterator/Autoload.php): ストリームを開けませんでした: No such file or directory in /usr/lib/php/pear/PHPUnit/Autoload.php on line 45
致命的なエラー: require_once(): 行 45 で /usr/lib/php/pear/PHPUnit/Autoload.php の必要な 'File/Iterator/Autoload.php' (include_path='.:') を開けませんでした
インクルード パスが "." であることに気付きました。ターミナルでこれを実行して、「php --ini」がロードされているphp.iniファイルを見つけ、これを取得しました
Loaded Configuration File: /Applications/MAMP/bin/php/php5.4.4/conf/php.ini
php.ini ファイルのインクルード パスは次のとおりです。
include_path = ".:/Applications/MAMP/bin/php/php5.4.4/lib/php:/usr/lib/php/pear:/usr/bin/phpunit"
では、なぜ「.」と出てくるのでしょうか。ターミナルでphpunitを実行するときは?
チェックとして、次のコードを含む php ファイルを作成しました。
echo get_include_path();
ターミナルでそのファイルを実行すると、php.ini ファイルにインクルード パスが出力されます。
echo get_include_path();
/Applications/MAMP/bin/php/php5.4.4/lib/php/PHPUnit/Autoload.php の先頭にも追加しました。これでターミナルでphpunitを実行すると、出力されるインクルードパスは「.:」です。
phpunit が修正が必要な別のインクルード パスを読み込んでいるようです。