在PHP更新之一(ubuntu)之后,我收到错误 Class' AMQPConnection'在我的申请中找不到。 我通过 pecl
重新安装 amqp 的最新稳定版本(1.7.1)sudo pecl uninstall amqp
sudo pecl install amqp
它问我:
下载amqp-1.7.1.tgz ...
开始下载amqp-1.7.1.tgz(79,905字节)
..................完成:79,905字节
18个源文件,构建
跑步:phpize
配置:
PHP Api版本:20121113
Zend Module Api No:20121212
Zend Extension Api No:220121212
将路径设置为librabbitmq安装前缀[autodetect]:
当我选择其中一个变体时 - 构建失败,错误总是像
configure:错误:请重新安装librabbitmq发行版本或(重新)安装librabbitmq开发包(如果它在您的系统中可用) 错误:`/ tmp / pear / temp / amqp / configure --with-librabbitmq-dir = 20121113'失败
如果我选择自动检测,则安装成功完成。 然后我将 extension = amqp.so 添加到 php.ini 并收到错误
PHP警告:PHP启动:无法加载动态库' /usr/lib/php5/20131226/amqp.so' - /usr/lib/php5/20131226/amqp.so:无法打开共享对象文件:第0行的“未知”中没有此类文件或目录
我通过
找到了 amqp.solocate amqp.so
显示
/usr/lib/php5/20121212/amqp.so
然后我将 extension = amqp.so 更改为完整路径 /usr/lib/php5/20121212/amqp.so
我得到了非常有趣的错误
PHP警告:PHP启动:amqp:无法初始化模块 使用模块API = 20121212编译的模块 使用模块API = 20131226编译的PHP 这些选项需要匹配 在第0行的未知中
据我所知,PHP编译的版本最新为Amqp。 但它是最新的amqp库版本。 Pecl表示:
包稳定/(最新)本地
amqp 1.7.1(稳定)1.7.1与任何符合AMQP的服务器通信
PHP版本为5.6.4
PHP 5.6.4-4ubuntu6(cli)(建于2015年4月17日15:47:51)
版权所有(c)1997-2014 PHP小组
Zend Engine v2.6.0,版权所有(c)1998-2014 Zend Technologies Zend OPcache v7.0.4-dev,版权所有(c)1999-2014,作者:Zend
技术 与Xdebug v2.2.6,版权所有(c)2002-2014,作者Derick Rethans