Не удается обновить PEAR с 1.9.0 до 1.9.1

Я готов установить phpunit 5.3 с MAMP 1.9, и там мне нужно обновить PEAR до версии 1.9.1. Текущая версия установлена ​​1.9.0.

Когда я пытаюсь обновить, я получаю следующее:

sudo pear channel-update pear.php.net
sudo pear upgrade pear
Could not get contents of package "/Applications/MAMP/bin/php5.3/bin/pear". Invalid tgz file.
upgrade failed

Когда я форсирую обновление Это все еще не работает:

sudo pear upgrade --force PEAR
downloading PEAR-1.9.1.tgz ...
Starting to download PEAR-1.9.1.tgz (293,587 bytes)
.............................................................done: 293,587 bytes
upgrade ok: channel://pear.php.net/PEAR-1.9.1
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"

sudo pear -V
PEAR Version: 1.9.0

Как предположил bindbn:

sudo pear install --offline /Users/tom/Downloads/PEAR-1.9.1.tgz 
Ignoring installed package pear/PEAR
Nothing to install

sudo pear upgrade --force --alldeps PEAR
downloading PEAR-1.9.1.tgz ...
Starting to download PEAR-1.9.1.tgz (293,587 bytes)
.............................................................done: 293,587 bytes
upgrade ok: channel://pear.php.net/PEAR-1.9.1
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

Я надеюсь, что кто-то может понять это! Спасибо!

4 ответа

Решение

У меня такая же проблема. Вы должны перенастроить его, чтобы найти пакеты PEAR.

Замените версию php Mac OS X на версию MAMP

$ cd /usr/bin
$ cp php php.bak (Backup the old version)
$ ln -s /Application/MAMP/bin/php5.3/bin/php (link to the version of MAMP php)
$ sudo chmod 0554 /Application/MAMP/bin/php5.3/bin/* (makes all the scripts executable)

$ php -v
PHP 5.3.2 (cli) (built: Mar  5 2010 16:45:34) 
Copyright (c) 1997-2010 The PHP Group
Zend Engine v2.3.0, Copyright (c) 1998-2010 Zend Technologies
    with XCache v1.3.0, Copyright (c) 2005-2009, by mOo

Конфигурирование PEAR:

 $ cd /Application/MAMP/bin/php5.3/bin
 $ pear -V
 PEAR Version: 1.9.0
 PHP Version: 5.3.2
 Zend Engine Version: 2.3.0
 Running on: 
 Darwin mbp.local 9.8.0 
 Darwin Kernel Version 9.8.0: Wed Jul 15 16:55:01 PDT 2009; 
 root:xnu-1228.15.4~1/RELEASE_I386 i386

$ pear config-show

Измените следующие ключи, чтобы они указывали на папку в /Applications/MAMP/bin/php5.3/lib/php

$ pear config-set [key] [path]

PEAR documentation directory   doc_dir          /Applications/MAMP/bin/php5.3/lib/php/doc
PHP extension directory        ext_dir          /Applications/MAMP/bin/php5.3/lib/php/extensions
PEAR directory                 php_dir          /Applications/MAMP/bin/php5.3/lib/php/PEAR
PHP CLI/CGI binary             php_bin          /Applications/MAMP/bin/php5.3/bin/php
php.ini location               php_ini          /Applications/MAMP/conf/php5.3/php.ini
Signature Key Directory        sig_keydir       /Applications/MAMP/conf/php5.3/pearkeys

Обновление канала:

$ pear channel-update pear.php.net

Обновление PEAR:

$ pear upgrade pear
downloading PEAR-1.9.1.tgz ...
Starting to download PEAR-1.9.1.tgz (293,587 bytes)
.............................................................done: 293,587 bytes
downloading Archive_Tar-1.3.7.tgz ...
Starting to download Archive_Tar-1.3.7.tgz (17,610 bytes)
...done: 17,610 bytes
downloading Structures_Graph-1.0.3.tgz ...
Starting to download Structures_Graph-1.0.3.tgz (30,191 bytes)
...done: 30,191 bytes
downloading Console_Getopt-1.2.3.tgz ...
Starting to download Console_Getopt-1.2.3.tgz (4,011 bytes)
...done: 4,011 bytes
downloading XML_Util-1.2.1.tgz ...
Starting to download XML_Util-1.2.1.tgz (17,729 bytes)
...done: 17,729 bytes
upgrade ok: channel://pear.php.net/Archive_Tar-1.3.7
upgrade ok: channel://pear.php.net/Structures_Graph-1.0.3
upgrade ok: channel://pear.php.net/Console_Getopt-1.2.3
upgrade ok: channel://pear.php.net/XML_Util-1.2.1
upgrade ok: channel://pear.php.net/PEAR-1.9.1
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.1
PHP Version: 5.3.2
Zend Engine Version: 2.3.0
Running on: 
Darwin mbp.local 9.8.0 
Darwin Kernel Version 9.8.0: Wed Jul 15 16:55:01 PDT 2009; root:xnu-1228.15.4~1/RELEASE_I386 i386

После многих часов поиска. Мои ключи PEAR указывали на php 5 вместо php 5.2, которая является версией php, которая находится у меня на пути.

Как сказано выше, перечислите ключи груши с

$ pear config-show

А затем установить ключи

pear config-set [key] [path]

PEAR documentation directory   doc_dir          /Applications/MAMP/bin/php5.x/lib/php/doc
PHP extension directory        ext_dir          /Applications/MAMP/bin/php5.x/lib/php/extensions
PEAR directory                 php_dir          /Applications/MAMP/bin/php5.x/lib/php/PEAR
PHP CLI/CGI binary             php_bin          /Applications/MAMP/bin/php5.x/bin/php
php.ini location               php_ini          /Applications/MAMP/conf/php5.x/php.ini
Signature Key Directory        sig_keydir       /Applications/MAMP/conf/php5.x/pearkeys

Убедитесь, что 5.x - это версия php, которую вы используете. Чтобы узнать, какая у вас версия php

$ php -i

Теперь, если я могу получить только php unit test для установки * sigh *

Пытаться:

sudo pear upgrade --force --alldeps PEAR

или же

sudo pear install --offline /Applications/MAMP/bin/php5.3/bin/pear/PEAR-1.9.1.tgz

Я пытаюсь установить phpunit для MAMP, поэтому вот шаги, которые я предпринял (после того, как следовал учебнику, связанному выше)

$ cd /usr/bin
$ sudo rm ./php
$ sudo rm ./pear
$ sudo ln -s /Applications/MAMP/bin/php5.3/bin/pear
$ sudo ln -s /Applications/MAMP/bin/php5.3/bin/php

В вашем веб-браузере откройте: http://pear.php.net/go-pear

сохранить код в /Applications/MAMP/bin/php5.3/go-pear.php

$ cd /Applications/MAMP/bin/php5.3
$ php ./go-pear.php

Следуйте инструкциям на экране, выбирая Y, когда появится список пакетов для установки. Вам может быть показано это сообщение:

ПРЕДУПРЕЖДЕНИЕ! Файл include_path, определенный в используемом в настоящее время php.ini, не содержит только что указанный вами каталог PEAR PHP: Если указанный каталог также не входит в каталог include_path, используемый вашими сценариями, у вас будут проблемы с работой любых пакетов PEAR.

Хотите изменить php.ini? [Да / Нет]:

Введите Y, чтобы продолжить. Это должно теперь показать:

php.ini include_path обновлен.

Текущий путь включения: .:/Applications/MAMP/bin/php5.3/lib/php

Настроенный каталог: /Applications/MAMP/bin/php5.3/PEAR

В настоящее время используется php.ini (думаю): /Applications/MAMP/conf/php5.3/php.ini

Нажмите Enter, чтобы продолжить:

Нажмите ввод, и вы должны быть на своем пути.

Теперь, чтобы убедиться, что у вас есть груша 1.9.1, запустите

$ pear version

Теперь вы можете следовать инструкциям по установке phpunit. Когда phpunit установлен, он будет помещен в /Applications/MAMP/bin/php5.3/PEAR/PHP/

Другие вопросы по тегам