0

我在 redhat 上使用 php 5.2.10。默认安装的 pear 包是 PEAR 1.8.0。现在我想通过 pear 安装 PHPunit。因此,每当我运行命令安装 phpunit 时,都会出现错误:

pear install --alldeps phpunit/PHPUnit

phpunit/PHPUnit requires PEAR Installer (version >= 1.9.2), installed version is 1.8.0
phpunit/PHPUnit can optionally use PHP extension "dbus"
phpunit/DbUnit requires PEAR Installer (version >= 1.9.2), installed version is 1.8.0
phpunit/File_Iterator requires PEAR Installer (version >= 1.9.2), installed version is         1.8.0
phpunit/PHP_CodeCoverage requires PEAR Installer (version >= 1.9.1), installed version   is 1.8.0
phpunit/PHP_CodeCoverage requires package "phpunit/File_Iterator" (version >= 1.2.2)
phpunit/PHP_CodeCoverage can optionally use PHP extension "xdebug" (version >= 2.0.5)
phpunit/PHPUnit_MockObject requires PEAR Installer (version >= 1.9.2), installed version is 1.8.0  
phpunit/PHPUnit_Selenium requires PEAR Installer (version >= 1.9.2), installed version is 1.8.0
phpunit/PHP_TokenStream requires PEAR Installer (version >= 1.9.1), installed version is 1.8.0
No valid packages found
install failed

我试过命令升级梨:

pear upgrade pear
pear upgrade --force pear

但它返回:

Nothing to upgrade

有什么解决办法吗?

4

3 回答 3

2

试试这个命令:

pear upgrade --force http://pear.php.net/get/PEAR-1.9.4.tar

它将下载 pear 1.9.4 的 tar 并升级版本。
如果它不起作用,请检查您的 php 是否支持 .zlib。如果不支持,则通过以下命令配置您的 php with.zlib:

./configure --with zlib

通过浏览器上的 phpinfo 命令检查这一点,它将在您的 php 信息页面中支持 zlib。
运行上述命令升级您的 pear 版本并通过以下方式检查:

pear version

它会将您的 pear 版本显示为 1.9.4

然后运行命令:

pear install --alldeps phpunit/PHPUnit
于 2012-05-29T09:38:01.187 回答
1

如果你使用 RHEL 6,你有 php-pear >= 1.9.4 你只需要通过 yum 更新,比如 yum install php-pear

但如果你这样做,它可能也会更新你的 php 安装。您将获得所有要更新的软件包的列表,并且您可以选择接受或取消。

于 2012-05-25T18:46:06.953 回答
1

如果 pear 告诉您“无需升级”,您应该清除缓存:

$ pear clear-cache
$ pear upgrade pear
于 2012-05-25T19:34:54.627 回答