我已经将php5.6升级到php7,但是zeromq扩展会产生很多问题.我在哪里可以下载php7的正确zmq.so文件?官方网站都没有提供适用于php7的版本(我正在使用apache2.4).
我遵循了以下教程:如何安装ZeroMQ.
"安装ZeroMQ"步骤正常,但当我执行命令"make"时,第二步"安装PHP绑定"失败,出现以下错误:
"/home/puser/zeromq-4.1.4/php-zmq/zmq.c:2740:2: error: too many arguments to function 'zend_register_internal_class_ex' php_zmq_device_exception_sc_entry = zend_register_internal_class_ex(&ce_device_exception, php_zmq_exception_sc_entry, "ZMQException" TSRMLS_CC) ^ In file included from /usr/include/php/20151012/main/php.h:40: 0, from /home/puser/zeromq-4.1.4/php-zmq/php_zmq.h:45,from /home/puser/zeromq-4.1.4/php-zmq /zmq.c:31:/usr/include/php/20151012/Zend/zend_API.h:290:28: note: declared here ZEND_API zend_class_entry *zend_register_internal_class_ex(zend_class_entry *class_entry, zend_class_entry *parent_ce);"
使用php 5.6时,不会出现此错误.如何解决这个问题?
编辑:我发现ZeroMQ目前在这篇文章中与php7"无法正常工作":ZeroMQ安装.有没有解决方法?
Erik Berkun-.. 10
您可以通过PECL安装测试版,我一直在使用它,没有任何问题.
sudo apt-get install php-pear pecl install zmq-beta
如果在安装过程中出现错误,那么很可能会遗漏一些依赖项
sudo apt-get install php7.0-dev libzmq-dev pkg-config
对于MacOS,您可以替换apt-get
它brew
,它也应该工作.
在较新版本的Ubuntu/Debian中,您现在可以做到
sudo apt-get install php-zmq
建议使用以前的方法,因为它使用较新版本的底层ZeroMQ库,并负责为您启用扩展.
您可以通过PECL安装测试版,我一直在使用它,没有任何问题.
sudo apt-get install php-pear pecl install zmq-beta
如果在安装过程中出现错误,那么很可能会遗漏一些依赖项
sudo apt-get install php7.0-dev libzmq-dev pkg-config
对于MacOS,您可以替换apt-get
它brew
,它也应该工作.
在较新版本的Ubuntu/Debian中,您现在可以做到
sudo apt-get install php-zmq
建议使用以前的方法,因为它使用较新版本的底层ZeroMQ库,并负责为您启用扩展.