码迷,mamicode.com
首页 > Web开发 > 详细

php 的rabbitmq 扩展模块amqp安装

时间:2019-04-29 09:21:53      阅读:221      评论:0      收藏:0      [点我收藏+]

标签:ann   develop   机器   info   self   object   wget   efi   仓库   

error 提示:

Please reinstall the librabbitmq distribution itself or (re)install librabbitmq development package if it available in your system

或者
checking for amqp using pkg-config... configure: error: librabbitmq not found

或者
ERROR: `/tmp/pear/temp/amqp/configure --with-php-config=/usr/local/php/bin/php-config --with-librabbitmq-dir=/usr/local/lib64/l‘ failed

rabbitmq-c 升级到0.9版本了,许多0.7的方法有些变动,按照旧方法尝试多次,失败

第一步安装 librabbitmq

安装librabbitmq有两种方法,具体方法如下:

第一种方法:

直接使用yum 安装 librabbitmq , 该方法有可能行不通,就是你的YUM环境配置的问题,搜索不到librabbitmq,就无法安装, 那就要转到到下面的第二种方法
技术图片
此种方法是安装成功了(使用的阿里云yum源),但依旧没起作用(是因为仓库里是0.8版本的)

第二种方法:源码安装rabbitmq-c-0.9.0

下载地址为:wget https://github.com/alanxz/rabbitmq-c/archive/v0.9.0.tar.gz

tar -zxvf   v0.9.0-master.tar.gz

cd    rabbitmq-c-0.9.0-master

mkdir build && cd build
cmake ..
cmake -DCMAKE_INSTALL_PREFIX=/usr/local/rabbitmq-c/0.9 .. // 指定安装目录!important!

 cmake --build . --target install // 这一步是真正的build rabbitmq-c库的,注意,不要漏掉点 ‘.‘

安装完毕之后,就可以继续安装amqp

第二步安装amqp

运行命令:

/usr/local/php/bin/pecl install amqp 

运行该命令会出现如下提示,

Set the path to librabbitmq install prefix [autodetect] :

如果你是用第一种方法 yum 直接安装的librabbitmq,就直接按回车就可以,如果是第二种方法,就需要将安装rabbitmq-c-0.9.0的目录输入进去 /usr/local/rabbitmq-c/0.9 然后按回车。

第三步就是添加扩展模块

amqp安装完成之后,系统会提示你要你将amqp.so 扩展模块加入到PHP的配置文件

重启 php-fpm

第四部检查amqp模块安装

使用命令phpinfo 就可以查看,出现如下,就表示安装成功

AMQP protocol version 0-9-1 
librabbitmq version 0.5.2

-----------------------------------隔--安装可能会碰到的错误,神坑~-------------------------------------------

1.rabbitmq-c 的安装过程中,一定要记的手工指定安装目录 /usr/local/rabbitmq-c/0.9
2.rabbitmq-c 的安装过程中,命令行中的点”.”千万别漏
3.安装 amqp PHP 扩展过程中,有些机器会出现以下情况,原因就是 rabbitmq-c 生成时lib的目录为 /usr/local/rabbitmq-c/0.9/lib64 ,此时最好的做法时,直接把 /usr/local/rabbitmq-c/0.9/lib64 改为 /usr/local/rabbitmq-c/0.9/lib 即可.

[28-Apr-2019 15:52:32 UTC] PHP Warning:  PHP Startup: Unable to load dynamic library ‘amqp.so‘ (tried: /usr/local/php/lib/php/extensions/no-debug-non-zts-20170718/amqp.so (librabbitmq.so.4: cannot open shared object file: No such file or directory), /usr/local/php/lib/php/extensions/no-debug-non-zts-20170718/amqp.so.so (/usr/local/php/lib/php/extensions/no-debug-non-zts-20170718/amqp.so.so: cannot open shared object file: No such file or directory)) in Unknown on line 0

参考详细坑
记录Centos下RabbitMQ安装PHP扩展的详细过程以及遇到的各种坑

php 的rabbitmq 扩展模块amqp安装

标签:ann   develop   机器   info   self   object   wget   efi   仓库   

原文地址:https://blog.51cto.com/laok8/2386307

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!