php 扩展 rabbitmq popt
首先是rabbitmq-c-master.tar.gz包,
可以访问https://github.com/alanxz/rabbitmq-c去下载最新的
wget https://github.com/alanxz/rabbitmq-c.gitwget https://github.com/alanxz/rabbitmq-c/archive/v0.10.0.tar.gz
0.8.0 这个版本
对popt 要求低一些,如果 你遇到 POPT_ARG_ARGV 这个报错。
说明你的 popt 版本低于1.14了。
要不就是把rabbitmq-c的扩展控制在0.8.0这个版本。要不升级popt到1.14版本以上。yum popt最后版本1.13

第二方案升级 popt-1.18

Download (HTTP): http://ftp.rpm.org/popt/releases/popt-1.x/popt-1.18.tar.gz Download (FTP): ftp://ftp.rpm.org/pub/rpm/popt/releases/popt-1.x/popt-1.18.tar.gz
./configure --prefix=/usr --disable-static && make
make install


popt 升级完毕以后 就可以安装搞版本的 rabbitmq-c 的扩展了
mkdir build && cd build //这一步是在rabbitmq-c的根目录下创建一个build子目录
cmake -DCMAKE_INSTALL_PREFIX=/usr/local/librabbitmq .. // 这一步是让cmake根据../CMakeList.txt,即rabbitmq-c的根目录下的CMakeList.txt创建Makefile文件,Makefile文件会被创建到build目录中
cmake --build . // 这一步是真正的build rabbitmq-c库的,注意,不要漏掉结尾的点 '.' make && make install
操作完毕如下结果

以下四个文件,rabbitmq-c 我都亲自测试了可以用。版本越高,优化越好。 这里,我安装的是 0.10.0这个版本。下面php-amqp扩展也选择高版本

然后下载amqp-1.10.0.tgz,也可以去下载最新的http://pecl.php.net/package/amqp
wget http://pecl.php.net/get/amqp-1.10.0.tgz
解压源码并进行 phpize 操作

tar -zxvf amqp-1.10.0.tgz //解压
phpize / /php 编译
./configure --with-php-config=/usr/local/php/bin/php-config --with-amqp --with-librabbitmq-dir=/usr/local/librabbitmq
make && make install


遇到这个报错,如下处理。
/usr/bin/ld: cannot find -lrabbitmq
collect2: error: ld returned 1 exit status
make: *** [amqp.la] Error 1
解决:yum install librabbitmq-devel
操作完毕如下结果

修改 php.ini
extension=amqp

原文地址:https://www.cnblogs.com/heijinli/p/14154793.html
php 扩展 rabbitmq popt的更多相关文章
- PHP 下基于 php-amqp 扩展的 RabbitMQ 简单用例 (一) -- 安装 AMQP 扩展和 Direct Exchange 模式
Windows 安装 amqp 扩展 RabbitMQ 是基于 amqp(高级消息队列协议) 协议的.使用 RabbitMQ 前必须为 PHP 安装相应的 amqp 扩展. 下载相应版本的 amqp ...
- RabbitMQ消息队列系列教程(一)认识RabbitMQ
摘要 RabbitMQ是最为流行的消息中间件,是处理高并发业务的利器.本系列教程,将跟大家一起学习RabbitMQ. 目录 RabbitMQ是什么? RabbitMQ的特点是什么? 一.RabbitM ...
- PHP使用RabbitMQ实例
相关博文:CentOS6.9安装RabbitMQ和源码编译安装php的RabbitMQ扩展RabbitMQ入门基础CentOS7源码编译安装nginx+php7.2+mysql5.7并使用system ...
- RabbitMQ 相关理论部分
集群配置方式 RabbitMQ可以通过三种方法来部署分布式集群系统,分别是:cluster,federation,shovel cluster: 不支持跨网段,用于同一个网段内的局域网 可以随意的动态 ...
- RabbitMQ各协议异同详解
一.官网介绍 Which protocols does RabbitMQ support? RabbitMQ supports several messaging protocols, directl ...
- 菜鸟刷面试题(二、RabbitMQ篇)
目录: rabbitmq 的使用场景有哪些? rabbitmq 有哪些重要的角色? rabbitmq 有哪些重要的组件? rabbitmq 中 vhost 的作用是什么? rabbitmq 的消息是怎 ...
- RabbitMQ核心技术总结
RabbitMQ和kafka类似,也是一个消息服务.RabbitMQ是轻量级的,易于部署在内部和云端.RabbitMQ支持多种消息协议,可以部署在分布式集群中,能够满足高规模,高可用性要求.Rabbi ...
- 「微信小程序」PHP异步进程async-helper实例详解
PHP异步进程async-helper实例详解 PHP 的异步进程助手,借助于 AMQP 实现异步执行 PHP 的方法,将一些很耗时.追求高可用.需要重试机制的操作放到异步进程中去执行,将你的 HTT ...
- Spring boot集成Rabbit MQ使用初体验
Spring boot集成Rabbit MQ使用初体验 1.rabbit mq基本特性 首先介绍一下rabbitMQ的几个特性 Asynchronous Messaging Supports mult ...
随机推荐
- python类属性和实例属性的访问
- 西门子S7系列以太网通讯处理器功能介绍
北京华科远创科技有限研发的远创智控型号ETH-YC模块适用于西门子S7-200/S7-300/S7-400.SMART S7-200.西门子数控840D.840DSL.合信.亿维PLC的PPI/MPI ...
- Linux(CentOS7)下安装jdk1.8
Linux(CentOS7) 下安装 jdk1.8 操作过程. 一.检查是否自带jdk rpm -qa|grep java 如果存在则用下面命令删除,xxx yyy zzz代表查询出来的自带jdk名称 ...
- 【greys使用】阿里greys在线诊断工具
Greys是一个Java进程的异常诊断工具,可以在不停止程序的前提下,对一些问题进行检测.这个框架主要是采用Java的探针技术,可以做到动态修改java的字节码技术.前提是Jdk版本6+.(prema ...
- 端到端TVM编译器(下)
端到端TVM编译器(下) 4.3 Tensorization DL工作负载具有很高的运算强度,通常可以分解为张量运算符,如矩阵乘法或一维卷积.这些自然分解导致了最近的添加张量计算原语.这些新的原语带来 ...
- MindSpore模型精度调优实践
MindSpore模型精度调优实践 引论:在模型的开发过程中,精度达不到预期常常让人头疼.为了帮助用户解决模型调试调优的问题,为MindSpore量身定做了可视化调试调优组件:MindInsight. ...
- 共享CUDA内存
共享CUDA内存 进程间共享 此功能仅限于Linux. 将设备阵列导出到另一个进程 使用CUDA IPC API,可以与同一台计算机上的另一个进程共享设备阵列.为此,请使用.get_ipc_handl ...
- Contos8 安装 MariaDb 时报错:Could not open mysql.plugin table: table mysql.plugin
导语: 因个人服务器误删了一些文件导致MariaDB崩溃,一直在报错,所以想着重装一下,没想到在重装后启动时再次报错(与之前报错不同),这次的报错原因大致是因为某些插件表找不到. 因此又开启了漫长的寻 ...
- 三、Nginx设置用户认证
要求:通过nginx服务端配置实现以下目标 访问web页面需要进行用户认证. 用户名为:tom,密码:123456 操作步骤, 更改配置文件 [root@client ~]# vim /usr/loc ...
- 【渗透实战】sqlmap_修改tamper脚本_绕过WAF_第三期
/文章作者:Kali_MG1937 CSDN博客号:ALDYS4 QQ:3496925334/ 今天google找注入点的时候发现某企业一个挺有意思的waf 常规操作绕过去后决定写一篇博客 信息收集 ...