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
이것은 알려진 버그 입니다. 버그로 인한 문제가 여기서 다루지 않을까 두렵 습니다 .
terdon

gzopen을 확인할 때 734 행이 "false"를 반환하므로 /usr/share/php/Archive/Tar.php가 tgz 파일을 열 수 없습니다. Google은 5 년 된 버그 (여전히 열려 있음)를 가지고 있습니다. bugs.launchpad.net/ubuntu/+source/php5/+bug/451405 해결책은 Tar.php에서 다음을 찾아 바꾸는 것입니다. * Replace ' gzopen '을'gzopen64 '로 대체 *'gzseek '를'gzseek64 '로 대체 *'gztell '을'gztell64 '로 대체
jarederaj

답변:


1

PHPUnit을 얻는 가장 쉬운 방법은 단일 파일에 번들로 제공되는 PHPUnit의 모든 필수 (선택적) 종속성이있는 PHP Archive (PHAR)를 다운로드하는 것입니다.

터미널을 열고 다음을 입력하십시오.

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

+1 stackoverflow.com/questions/12536668/…의 모든 답변 을 처음 시도 했지만 귀하의 답변으로 해결되었습니다.
eddy147
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.