接下来来安装php扩展AMQP,安装了它以后,才能用PHP操作rabbitmq。

wget https://pecl.php.net/get/amqp-1.4.0.tgz
tar -zxvf amqp-1.4.0.tgz
cd amqp-1.4.0
/lnmp/php/bin/phpize
./configure --with-php-config=/lnmp/php/bin/php-config

安装到这,就报了错:
checking for amqp files in default path… not found
configure: error: Please reinstall the librabbit-mq distribution

在网上搜了搜,找到了解决方法(http://www.cnphp6.com/archives/68356):
需要安装rabbitmq-c,rabbitmq-c是一个用于C语言的,与AMQP server进行交互的client库。
下载地址:https://github.com/alanxz/rabbitmq-c

unzip rabbitmq-c-master.zip
cd rabbitmq-c-master
autoreconf -i
./configure --prefix=/lnmp/rabbitmq-c
make
make install

额,接着安装PHP扩展AMQP

./configure --with-php-config=/lnmp/php/bin/php-config --with-amqp --with-librabbitmq-dir=/lnmp/rabbitmq-c
make && make install

草,又报错啦:
/software/amqp-1.4.0/amqp_exchange.c:515: error: incompatible type for argument 7 of ‘amqp_exchange_declare’
/lnmp/rabbitmq-c//include/amqp_framing.h:798: note: expected ‘amqp_boolean_t’ but argument is of type ‘amqp_table_t’
/software/amqp-1.4.0/amqp_exchange.c:515: error: too few arguments to function ‘amqp_exchange_declare’
make: *** [amqp_exchange.lo] Error 1
在https://github.com/pdezwart/php-amqp/issues/127找到了方法:
应该是安装的rabbitmq-c的版本太高了(安装的是 v0.6.0),下载了v0.5.2版本(https://github.com/alanxz/rabbitmq-c/releases/download/v0.5.2/rabbitmq-c-0.5.2.tar.gz),重新安装rabbitmq-c,重新安装php扩展AMQP,终于可以啦。真是一波三折啊。

在php配置文件里将扩展加上,重启一下,看phpinfo,显示如下图即安装成功。

php扩展AMQP,安装报错解决的更多相关文章

  1. VMware Virtual Machine安装报错解决1

    安装完VMware virtual machine 后,再进行 "create a new virtual machine"最后点击"Finish"时,报如下错 ...

  2. ORACLE安装报错解决

    今天在虚拟机中安装了一个WINDOWS系统,用于安装oracle服务器:从安装到使用中出现了很多的问题,把这些问题解决掉,花了不少时间,查了不少的资料. 第一个,我在安装过程中,出现了ORA-0092 ...

  3. CitrixSmartAuditor安装报错解决方法

    报错1:安装过程中报错 解决方法: SQLServer的配置: http://www.cnblogs.com/weizhengLoveMayDay/p/3267756.html 报错2:无法连接到Sm ...

  4. ELK系列--justniffer0.5.12安装报错解决方法

    现象: justniffer的0.5.12(安装后显示0.5.13版本)安装过程中需要升级boost至1.46以上版本,同时在make时会出现如下报错: /opt/Python-2.6.6/Pytho ...

  5. 开发工具cfree安装报错解决

    报错如下: [ --------------------配置: mingw5 - CUI Debug, 编译器类型: MinGW-------------------- 检查文件依赖性... 正在编译 ...

  6. PHP-FPM安装报错解决

    PHP源码安装 setenforce 0--------------------------------------------------------------------安装php时的报错che ...

  7. image-webpack-loader包安装报错解决

    在家里安装这个包,总是报错安装失败,换成最快的淘宝镜像也是如此,先卸载重新安装亦是如此,于是想到了原因,到了公司,公司的网是可以连接国外的,安装成功了! 也就是说,需要翻墙才可以装成功.

  8. mysql安装 报错解决

    换了新电脑,重新安装了一下mysql,安装过程出现了一些错误,在此记录一下: 参考菜鸟教程:https://www.runoob.com/mysql/mysql-install.html 1.下载my ...

  9. pip安装报错 解决办法

    安装库时报错:Could not fetch URL https://pypi.python.org/simple/wheel/: 解决办法:  pip --trusted-host pypi.pyt ...

随机推荐

  1. WebRTC 源码分析(二):安卓预览

    有过一定相机开发经验的朋友可能会疑惑,预览还有什么好分析的,不是直接 camera.setPreviewDisplay 或者 camera.setPreviewTexture 就能在 SurfaceV ...

  2. java SoftReference WeakReference

    Java 2 平台引入了 java.lang.ref 包,其中包括的类可以让您引用对象,而不将它们留在内存中.这些类还提供了与垃圾收集器(garbage collector)之间有限的交互. 1.先“ ...

  3. Android 8 wifi blakclist

    在连接wifi的时候,认证或者关联失败,有时会加入黑名单中.记录wpa_supplicant中blacklist的原理. 分析可以看到,如果是机器自己断开,是不会把AP加入黑名单的,只有AP侧出了问题 ...

  4. 记一些常用到的python中的函数

    1. zip()函数 它的作用是从参数中按顺序一一抽出子参数组出一个新的tuple.  直接看例子: >>> mean = np.array([2, 5, 4]) >>& ...

  5. 使用Maven清理项目

    在基于Maven的项目中,很多缓存输出在“target”文件夹中.如果想建立项目部署,必须确保清理所有缓存的输出,从面能够随时获得最新的部署. 要清理项目缓存的输出,发出以下命令: mvn clean ...

  6. unity提高----------射线使用【unity3d 怎样获得当前鼠标点击的对象】

    unity3d 怎样获得当前鼠标点击的对象 最佳答案   var ray = Camera.main.ScreenPointToRay (Input.mousePosition);var hit : ...

  7. 嵌入式驱动开发只设备数---dts

    http://blog.sina.com.cn/s/blog_ad64b8200101e7q0.html

  8. C# where用法解析

    where 子句用于指定类型约束,这些约束可以作为泛型声明中定义的类型参数的变量.1.接口约束.例如,可以声明一个泛型类 MyGenericClass,这样,类型参数 T 就可以实现 ICompara ...

  9. docker默认ip查询

    查询docker ip地址 docker-machine ip default

  10. win7下命令行提示符从C盘进入E盘的文件夹下

    进入E:\papercode\3D-point-cloud-generation-master\3D-point-cloud-generation-master