尝试安装 PHP 扩展时出现“不是有效的包存档”?

尝试安装 PHP 扩展时出现“不是有效的包存档”?

我正在 VPS 上运行 CENTOS 6.6 并尝试安装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

但我得到了同样的错误。

为什么会出现这个错误?

答案1

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

如果不一样 - 将其删除并尝试再次下载。

或者 - 您可以使用 -vv 参数调用 pecl - 然后您应该看到有关错误的更多信息以及下载文件的路径。默米来自http://pecl.php.net/get/zmq-1.1.2.tgz

答案2

遇到同样的问题,解决方法:

这对我有用。

为什么?我认为这是因为 pecl 命令尝试查找包.xml文件在tgz,但该文件仍然存档在该 tgz 文件内的 tar 存档中。

因此,手动下载并解压即可完成这项工作。

相关内容