php 的rabbitmq 扩展模块amqp安装

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,就无法安装, 那就要转到到下面的第二种方法
php 的rabbitmq 扩展模块amqp安装
此种方法是安装成功了(使用的阿里云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扩展的详细过程以及遇到的各种坑

转载于:https://blog.51cto.com/laok8/2386307

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值