Назад | Перейти на главную страницу

Установка PHPUnit с PEAR на CentOS

Я пытаюсь установить PHPUnit на свой Linux-сервер с CentOS 5.8, и у меня возникает куча проблем.

Я использую PHP версии 5.4.12 (Remi install).

Прежде всего следует отметить, что у меня есть две грушевидные установки на обоих /usr/share/pear и /usr/share/php.

Сначала я попробовал

pear install --alldeps php/PHPUnit

Это дало мне:

phpunit/PHPUnit requires PEAR Installer (version >= 1.9.4), installed version is 1.4.9
phpunit/File_Iterator requires PEAR Installer (version >= 1.9.2), installed version is 1.4.9
phpunit/Text_Template requires PEAR Installer (version >= 1.9.4), installed version is 1.4.9
phpunit/PHP_CodeCoverage requires PEAR Installer (version >= 1.9.4), installed version is 1.4.9
phpunit/PHP_CodeCoverage requires package "phpunit/File_Iterator" (version >= 1.3.0)
phpunit/PHP_CodeCoverage requires package "phpunit/Text_Template" (version >= 1.1.1)
phpunit/PHP_CodeCoverage can optionally use PHP extension "xdebug" (version >= 2.0.5)
phpunit/PHP_Timer requires PEAR Installer (version >= 1.9.2), installed version is 1.4.9
phpunit/PHPUnit_MockObject requires PEAR Installer (version >= 1.9.4), installed version is 1.4.9
phpunit/PHPUnit_MockObject requires package "phpunit/Text_Template" (version >= 1.1.1)
phpunit/PHPUnit_MockObject can optionally use PHP extension "soap"
phpunit/PHP_Invoker requires PEAR Installer (version >= 1.9.4), installed version is 1.4.9
phpunit/PHP_Invoker requires package "phpunit/PHP_Timer" (version >= 1.0.1)
phpunit/PHP_TokenStream requires PEAR Installer (version >= 1.9.4), installed version is 1.4.9
No valid packages found
install failed

Следующим шагом было обновление груши:

Skipping package "pear/PEAR", already installed as version 1.9.4
downloading Structures_Graph-1.0.4.tgz ...
Starting to download Structures_Graph-1.0.4.tgz (30,318 bytes)
.........done: 30,318 bytes

Warning: strtotime(): It is not safe to rely on the system's timezone settings. You are *required* to use the date.timezone setting or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected the timezone 'UTC' for now, but please set date.timezone to select your timezone. in Validate.php on line 486
ERROR: unable to unpack /tmp/tmp4Gb17e/Structures_Graph-1.0.4.tgz

Здесь я заметил, что у меня последняя версия (1.9.4). pear version говорит мне обратное (1.4.9). Я не уверен, в чем проблема с ошибкой файла tar.

Далее я бегу yum remove php-pear поэтому я могу попробовать переустановить последнюю версию:

Running Transaction
  Erasing        : php-pear                                                                                                                                                                                                              1/1

Removed:
  php-pear.noarch 1:1.4.9-8.el5

Complete!

Я переустановил грушу, используя sudo yum install php-pear, и следовал перечисленным инструкциям Вот , но теперь я получаю ту же ошибку, что и раньше, когда пытаюсь установить PHPUnit (ошибка с версией PEAR). Почему, когда я устанавливаю грушу вручную, она не дает мне самую последнюю версию пакета?

Я сейчас заблудился, и кажется, что у меня плавают две установки PEAR, и я не уверен, как подойти к их очистке и начать с чистого листа. Кто-нибудь знает, как исправить эту ситуацию? Я должен полностью перекомпилировать PHP и начать заново?

Спасибо за любую помощь.

Хорошо, в конце концов, у меня получилось, загрузив и установив PEAR вручную:

wget http://pear.php.net/go-pear.phar # Download the file
php go-pear.phar # Execute the file via PHP

Чего я не понимал, так это того, что PEAR, вероятно, слишком устарел, чтобы делать это самостоятельно (спасибо эта почта)

Это позволило мне установить PHPUnit.