升级到Ubuntu 14.04后php-pear无法正常工作


8

升级到Ubuntu 14.04后,php-pear无法安装任何软件包。

sudo pear install --alldeps --force pear.phpunit.de/PHPUnit
downloading PHPUnit-4.0.17.tgz ...
Starting to download PHPUnit-4.0.17.tgz (509,430 bytes)
......................................................................................................done: 509,430 bytes
could not extract the package.xml file from "/build/buildd/php5-5.5.9+dfsg/pear-build-download/PHPUnit-4.0.17.tgz"
Download of "phpunit/PHPUnit" succeeded, but it is not a valid package archive
Error: cannot download "phpunit/PHPUnit"
Download failed
install failed
The packages are being downloaded but can't extract.

我已经尝试过此解决方案,http://cweiske.de/tagebuch/pear-php-5.5.htm 但仍然遇到相同的问题。

有人遇到过这种情况么?我需要降级到php5.4吗?如果是这样,怎么办?

更新:感谢您的快速回复。卡雷尔的答案解决了我的问题。只是为了完整性,通过梨安装的正确方法不再起作用。从phar文件安装的步骤记录在:http ://phpunit.de/getting-started.html

而且不再需要包含/要求PHPunit / Runner.php和Autoload等。

再次。谢谢您的帮助


1
这是一个已知的错误。恐怕bug引起的问题不在这里
terdon 2014年

/usr/share/php/Archive/Tar.php无法打开tgz文件,因为在检查gzopen时,第734行返回“ false”。Google有5年的bug(仍未解决),可能与之相关:bugs.launchpad.net/ubuntu/+source/php5/+bug/451405 解决方案是在Tar.php中查找并替换以下内容:*替换“ gzopen”替换为“ gzopen64” *将“ gzseek”替换为“ gzseek64” *将“ gztell”替换为“ gztell64”
jarederaj 2014年

Answers:


1

获得PHPUnit的最简单方法是下载一个PHP归档文件(PHAR),该文件具有捆绑在单个文件中的PHPUnit的所有必需(以及某些可选)依赖性。

打开终端并输入:

wget https://phar.phpunit.de/phpunit.phar  # download the PHP Archive (PHAR) file  
chmod +x phpunit.phar  
sudo mv phpunit.phar /usr/local/bin/phpunit  

https://phar.phpunit.de/有很多不同版本的phpunit.phar 。如果使用第一个命令,它将选择并下载最新版本的phpunit.phar。


谢谢karel ..我想最后一行应该是sudo mv phpunit.phar / usr / local / bin / phpunit。但这解决了我的问题
amurray 2014年

+1首先尝试了stackoverflow.com/questions/12536668/…中的所有答案,但您的答案为我解决了。
eddy147
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.