Atualizando PEAR no Mac OS X / MAMP

Estou instalando o PHPUnit no Mac OS X e estou tendo problemas com a minha versão PEAR atual. As questões SO existentes não resolvem o problema. A versão PEAR atual é listada como 1.9.1. PHPUnit requer 1.9.4.

[le programmeur]$which pear /Applications/MAMP/bin/php5.3/bin/pear [le programmeur]$pear -V PEAR Version: 1.9.1 PHP Version: 5.3.5 Zend Engine Version: 2.3.0 [le programmeur]$pear config-get php_dir /Users/rallen8440/pear/share/pear 

Depois de executar a pear install -f pear PEAR 1.9.4 está supostamente instalado e running pear upgrade pear “indica” que estamos na versão mais recente.

 [le programmeur]$/Applications/MAMP/bin/php5.3/bin/pear install -f pear WARNING: "pear/Console_Getopt" is deprecated in favor of "pear/Console_GetoptPlus" downloading PEAR-1.9.4.tgz ... Starting to download PEAR-1.9.4.tgz (296,332 bytes) .............................................................done: 296,332 bytes install ok: channel://pear.php.net/PEAR-1.9.4 PEAR: Optional feature webinstaller available (PEAR's web-based installer) PEAR: Optional feature gtkinstaller available (PEAR's PHP-GTK-based installer) PEAR: Optional feature gtk2installer available (PEAR's PHP-GTK2-based installer) PEAR: To install optional features use "pear install pear/PEAR#featurename" [le programmeur]$/Applications/MAMP/bin/php5.3/bin/pear -V PEAR Version: 1.9.1 PHP Version: 5.3.5 Zend Engine Version: 2.3.0 [le programmeur]$pear upgrade pear pear/pear is already installed and is the same as the released version 1.9.4 upgrade failed 

No entanto, quando pera instala phpunit / PHPUnit é executado, ele diz o contrário:

 [le programmeur]$pear install phpunit/PHPUnit Did not download optional dependencies: phpunit/PHP_Invoker, use --alldeps to download automatically phpunit/PHPUnit requires PEAR Installer (version >= 1.9.4), installed version is 1.9.1 phpunit/PHPUnit can optionally use package "phpunit/PHP_Invoker" (version >= 1.1.0) phpunit/File_Iterator requires PEAR Installer (version >= 1.9.2), installed version is 1.9.1 phpunit/Text_Template requires PEAR Installer (version >= 1.9.4), installed version is 1.9.1 phpunit/PHP_CodeCoverage requires PEAR Installer (version >= 1.9.4), installed version is 1.9.1 phpunit/PHP_CodeCoverage requires package "phpunit/File_Iterator" (version >= 1.3.0) phpunit/PHP_CodeCoverage requires package "phpunit/Text_Template" (version >= 1.1.1) phpunit/PHP_CodeCoverage can optionally use PHP extension "xdebug" (version >= 2.0.5) phpunit/PHP_Timer requires PEAR Installer (version >= 1.9.2), installed version is 1.9.1 phpunit/PHPUnit_MockObject requires PEAR Installer (version >= 1.9.4), installed version is 1.9.1 phpunit/PHPUnit_MockObject requires package "phpunit/Text_Template" (version >= 1.1.1) phpunit/PHP_TokenStream requires PEAR Installer (version >= 1.9.4), installed version is 1.9.1 No valid packages found install failed [le programmeur]$pear -V PEAR Version: 1.9.1 PHP Version: 5.3.5 Zend Engine Version: 2.3.0 

Já havia uma PEAR instalada em / usr / bin / pear, mas não existe mais:

 [le programmeur]$ls /usr/bin/pear pear_old peardev 

O ~/.profile PATH está apontando para /Applications/MAMP/bin/php5.3/bin :

 # Mod path export PATH=/Applications/MAMP/bin/php5.3/bin:$PATH 

Não tenho nenhuma pista sobre o que estou faltando aqui. Halp!

Você tem duas instalações de pera na sua máquina, conforme descrito em https://stackoverflow.com/a/6596669/282601

O comando pear você está executando não está atualizando-se, mas a segunda instalação.

A única solução é configurar a pera para que ela se atualize, mudando os caminhos em pear config-show – ou para descartar todas as instalações e instalar a partir do zero.