Msgstr "недействительный пакетный архив" при попытке установить расширение PHP?

Я запускаю CENTOS 6.6 на VPS и пытаюсь установить расширение ZMQ PHP и попытался установить его с помощью команды, показанной в инструкциях:

sudo pecl install zmq-beta 

Однако он не работает, показывая это как результат:

 root@host [/zmq]# sudo pecl install zmq-beta downloading zmq-1.1.2.tgz ... Starting to download zmq-1.1.2.tgz (39,573 bytes) ..........done: 39,573 bytes could not extract the package.xml file from "/root/tmp/pear/cache/zmq-1.1.2.tgz" Download of "pecl/zmq" succeeded, but it is not a valid package archive Error: cannot download "pecl/zmq" Download failed install failed 

Я также пробовал:

 sudo pecl install -Z zmq-beta 

А также:

 sudo pecl install --nocompress zmq-beta 

Но я получаю ту же ошибку.

Почему эта ошибка возникает?

SOA # 1. Думаю, эта проблема находится в скачанном архиве. Проверьте md5sum архива:

 [root@centos6 ~]# md5sum /root/tmp/pear/cache/zmq-1.1.2.tgz 74da2fc1aa83e6fa27acffb9a37596b9 /root/tmp/pear/cache/zmq-1.1.2.tgz 

Если это не то же самое – удалите его и попробуйте загрузить его снова.

Альтернативно – вы можете вызывать pecl с параметром -vv – тогда вы должны увидеть больше об ошибке и пути от того, где был загружен файл. Мим был из http://pecl.php.net/get/zmq-1.1.2.tgz

Если бы та же проблема, решить ее:

  • Сначала загрузите zmq-1.1.2.tgz ( https://pecl.php.net/get/zmq-1.1.2.tgz )
  • Извлеките tgz, чтобы получить архив tar
  • cd в каталог tar-файла и установить этот пакет с пакетом sudo pear install -O zmq-1.1.2.tar

И это работает для меня.

Зачем ? Я думаю, это потому, что команда pecl пытается найти файл package.xml в tgz , но файл все еще архивируется в tar-архиве внутри этого файла tgz.

Поэтому загрузка и извлечение вручную выполняются.