O php-pear não está funcionando após a atualização para o Ubuntu 14.04


8

Após a atualização para o Ubuntu 14.04, o php-pear não conseguiu instalar os pacotes.

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.

Eu tentei esta solução, http://cweiske.de/tagebuch/pear-php-5.5.htm Mas ainda estou tendo o mesmo problema.

Mais alguém encontrou isso? Preciso fazer o downgrade para php5.4? Se sim, como?

Atualização: Obrigado pelas respostas rápidas. A resposta de Karels resolveu meu problema. Apenas para completar, a maneira correta de instalar via pear não funciona mais. As etapas para instalar a partir de um arquivo phar estão documentadas em: http://phpunit.de/getting-started.html

Também não é mais necessário incluir / exigir PHPunit / Runner.php e Autoload etc.

Novamente. Obrigado pela ajuda


1
Este é um bug conhecido . Receio que os problemas causados ​​por bugs estejam fora do tópico aqui .
terdon

/usr/share/php/Archive/Tar.php não pode abrir arquivos tgz porque a linha 734 está retornando "false" ao verificar o gzopen. O Google possui um bug de 5 anos (ainda aberto) que pode estar relacionado: bugs.launchpad.net/ubuntu/+source/php5/+bug/451405 A solução é encontrar e substituir o seguinte no Tar.php: * Replace ' gzopen 'with' gzopen64 '* Substitua' gzseek 'por' gzseek64 '* Substitua' gztell 'por' gztell64 '
jarederaj

Respostas:


1

A maneira mais fácil de obter o PHPUnit é fazer o download de um PHP Archive (PHAR) que tenha todas as dependências necessárias (e também opcionais) do PHPUnit agrupadas em um único arquivo.

Abra o terminal e digite:

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  

Existem muitas versões diferentes do phpunit.phar em https://phar.phpunit.de/ . Se você usar o primeiro comando, ele selecionará e fará o download da versão mais recente do phpunit.phar.


Obrigado karel .. Acho que a última linha deve ser sudo mv phpunit.phar / usr / local / bin / phpunit. Mas isso resolveu o meu problema
amurray

+1 Tentei todas as respostas em stackoverflow.com/questions/12536668/… no início, mas sua resposta resolveu isso para mim.
precisa saber é o seguinte
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.