OS X 10.6 の MAMP で phpunit を実行すると問題が発生します。PEAR 経由で phpunit をインストールしましたが、MAMP ディレクトリに存在しますが、ターミナルで phpunit を実行しても何も起こりません。これはパスの問題だと思いますが、OS X の初心者として、修正方法がわかりません。/Applications/MAMP/bin/php5.3/bin から実行しようとすると、これが発生します
$ phpunit
-bash: /usr/bin/phpunit: No such file or directory
$ ./phpunit
$
この問題は、このHow to Install phpunit 3.5 on mac with MAMP と非常によく似ていますが、解決策はこれまでのところ機能していません。システム情報は次のとおりです。
MAMP での phpunit の場所
$ sudo find / -name "phpunit"
/Applications/MAMP/bin/php5.3/bin/phpunit
/Applications/MAMP/bin/php5.3/lib/php/PEAR/phing/tasks/ext/phpunit
find: /dev/fd/3: Not a directory
find: /dev/fd/4: Not a directory
多分ここが問題
$ which php
/usr/bin/php
$ which phpunit
$ which pear
$ which ./pear
./pear
$ which ./phpunit
./phpunit
/Applications/MAMP/conf/php5.3/php.ini からの私の php.ini
include_path = ".:/Applications/MAMP/bin/php5.3/lib/php:/Applications/MAMP/bin/php5.3/lib/php/PEAR/"
phing を実行またはアクセスしようとすると、同じ問題が発生します。
繰り返しますが、問題はパス設定であると推測していますが、これを修正する方法がわかりません。
ありがとう
デイブ
アップデート
ご返信ありがとうございます。私のナシは 1.9.2 です pear config show lists
$ ./pear config-show
Configuration (channel pear.php.net):
=====================================
Auto-discover new Channels auto_discover <not set>
Default Channel default_channel pear.php.net
HTTP Proxy Server Address http_proxy <not set>
PEAR server [DEPRECATED] master_server pear.php.net
Default Channel Mirror preferred_mirror pear.php.net
Remote Configuration File remote_config <not set>
PEAR executables directory bin_dir /Applications/MAMP/bin/php5.3/bin
PEAR documentation directory doc_dir /Applications/MAMP/bin/php5.3/lib/php/doc
PHP extension directory ext_dir /Applications/MAMP/bin/php5.3/lib/php/extensions
PEAR directory php_dir /Applications/MAMP/bin/php5.3/lib/php/PEAR
PEAR Installer cache directory cache_dir /tmp/pear/cache
PEAR configuration file cfg_dir /Applications/MAMP/bin/php5.3/lib/php/cfg
directory
PEAR data directory data_dir /Applications/MAMP/bin/php5.3/lib/php/data
PEAR Installer download download_dir /tmp/pear/cache
directory
PHP CLI/CGI binary php_bin /Applications/MAMP/bin/php5.3/bin/php
php.ini location php_ini /Applications/MAMP/conf/php5.3/php.ini
--program-prefix passed to php_prefix <not set>
PHP's ./configure
--program-suffix passed to php_suffix <not set>
PHP's ./configure
PEAR Installer temp directory temp_dir /tmp/pear/temp
PEAR test directory test_dir /Applications/MAMP/bin/php5.3/lib/php/test
PEAR www files directory www_dir /Applications/MAMP/bin/php5.3/lib/php/www
Cache TimeToLive cache_ttl 3600
Preferred Package State preferred_state stable
Unix file mask umask 22
Debug Log Level verbose 1
PEAR password (for password <not set>
maintainers)
Signature Handling Program sig_bin /usr/local/bin/gpg
Signature Key Directory sig_keydir /Applications/MAMP/conf/php5.3/pearkeys
Signature Key Id sig_keyid <not set>
Package Signature Type sig_type gpg
PEAR username (for username <not set>
maintainers)
User Configuration File Filename /Users/dave/.pearrc
System Configuration File Filename /Applications/MAMP/conf/php5.3/pear.conf'
/Applications/MAMP/bin/php5.3/bin の ls -al は、とりわけ phpunit を一覧表示します
-rwxr-xr-x 1 dave admin 920 6 Apr 19:55 phing
-r-xr-xr--@ 1 dave admin 57583340 16 Feb 16:08 php
-rwxr-xr-x 1 dave admin 2169 6 Apr 19:48 phpunit
上記のように、php.ini には正しい場所がリストされているようで、echo $PATH が生成されます。
$ echo $PATH
/Applications/MAMP/bin/php5.3/bin:/Applications/MAMP/bin/php5.3/lib/php:/Applications/MAMP/bin/php5.3/lib/php/PEAR/:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/local/git/bin:/usr/X11/bin