簡體   English   中英

無法通過 PEAR 安裝 PHPUnit,需要 PEAR 安裝程序 >= 1.9.2,無法從 1.9.0 升級 PEAR

[英]Can't install PHPUnit via PEAR, requires PEAR Installer >= 1.9.2, can't upgrade PEAR from 1.9.0

我閱讀了其他 PHPUnit 安裝問題,但沒有任何成功。 我的 PEAR 安裝發生了什么事?

$ sudo pear update-channels
Updating channel "components.ez.no"
Channel "components.ez.no" is up to date
Updating channel "doc.php.net"
Channel "doc.php.net" is up to date
Updating channel "pear.php.net"
Channel "pear.php.net" is up to date
Updating channel "pear.phpunit.de"
Channel "pear.phpunit.de" is up to date
Updating channel "pear.symfony-project.com"
Channel "pear.symfony-project.com" is up to date
Updating channel "pecl.php.net"
Channel "pecl.php.net" is up to date
$ sudo pear upgrade pear
Nothing to upgrade
$ sudo pear install phpunit/PHPUnit
phpunit/PHPUnit requires PEAR Installer (version >= 1.9.2), installed version is 1.9.0
phpunit/PHPUnit can optionally use PHP extension "dbus"
phpunit/DbUnit requires PEAR Installer (version >= 1.9.2), installed version is 1.9.0
phpunit/File_Iterator requires PEAR Installer (version >= 1.9.2), installed version is 1.9.0
phpunit/PHP_CodeCoverage requires PEAR Installer (version >= 1.9.1), installed version is 1.9.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.9.0
phpunit/PHPUnit_Selenium requires PEAR Installer (version >= 1.9.2), installed version is 1.9.0
phpunit/PHP_TokenStream requires PEAR Installer (version >= 1.9.1), installed version is 1.9.0
No valid packages found
install failed
$ pear list
Installed packages, channel pear.php.net:
=========================================
Package          Version  State
Archive_Tar      1.3.7    stable
Cache_Lite       1.7.11   stable
Console_Getopt   1.3.1    stable
HTTP_Request2    2.0.0RC1 beta
Net_URL2         0.3.1    beta
PEAR             1.9.3    stable
Structures_Graph 1.0.4    stable
XML_RPC2         1.1.1    stable
XML_Util         1.2.1    stable
greg@ubuntu:~$ pear -V
PEAR Version: 1.9.0
PHP Version: 5.3.6
Zend Engine Version: 2.3.0
Running on: Linux ubuntu 2.6.32-32-generic-pae #62-Ubuntu SMP Wed Apr 20 22:10:33 UTC 2011 i686

pear list報告 1.9.3 已安裝, pear -V報告 1.9.0??!

更新嘗試過的 KingCrunch 建議。

$ sudo pear install -f pear
[sudo] password for greg: 
downloading PEAR-1.9.3.tgz ...
Starting to download PEAR-1.9.3.tgz (295,774 bytes)
...........................done: 295,774 bytes
install ok: channel://pear.php.net/PEAR-1.9.3
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"
$ pear -V
PEAR Version: 1.9.0
PHP Version: 5.3.6
Zend Engine Version: 2.3.0
Running on: Linux ubuntu 2.6.32-32-generic-pae #62-Ubuntu SMP Wed Apr 20 22:10:33 UTC 2011 i686

您的機器上基本上有 2 個 pear 安裝,“pear upgrade”命令更新另一個,而不是它本身。

我假設您正在運行的 pear 版本已通過 ubuntu 的 apt 安裝。

使用apt找出它的安裝位置(在 Debian/Ubuntu 上):

$ dpkg -L php-pear
...
/usr/share/php/PEAR.php
...
/usr/bin/pear

現在讓我們看看 pear 將文件安裝到哪里:

$ pear config-get php_dir
/usr/share/php

在我的機器上,它是相同的 - 但可能不是在你的機器上,這就是問題所在。 通過設置php_dirbin_dir來修復它:

$ pear config-set php_dir /usr/share/php
$ pear config-set bin_dir /usr/bin

或者,刪除 ubuntu pear 並從http://pear.php.net/go-pear.phar 重新安裝它

如果您在梨部分不成功,請查看此內容。

wget https://phar.phpunit.de/phpunit.phar
chmod +x phpunit.phar
mv phpunit.phar /usr/local/bin/phpunit

參考: http://phpunit.de/manual/3.7/en/installation.html

您也可以在下載后立即使用 PHAR;

wget https://phar.phpunit.de/phpunit.phar
php phpunit.phar

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM