Currently using Centos6.x system, php uses version 7.1, wlnmp one-click package has supported this extension
php7 installation amqp extension (based on Centos7.x) Reference: https://www. php.cn/topic/php7/437499.html
amqp expansion package address:
https://pecl.php.net/package/amqp
The difference from Centos7 is that rabbitmq-c needs to be compiled manually in Centos6.x environment, otherwise you will see the following error
amqp-1.9.4/amqp.c: In function ‘zm_startup_amqp’: amqp-1.9.4/amqp.c:177: error: ‘AMQP_SASL_METHOD_EXTERNAL’ undeclared (first use in this function) amqp-1.9.4/amqp.c:177: error: (Each undeclared identifier is reported only once amqp-1.9.4/amqp.c:177: error: for each function it appears in.) make: *** [amqp.lo] Error 1
1. Install the required dependencies. If you still have It prompts that other dependencies are missing, please install it yourself
yum install autoconf gcc gcc-c++ cmake librabbitmq-devel librabbitmq
2. Compile rabbitmq-c
Note: The rabbitmq-c-0.9.0 and rabbitmq-c-0.8.0 versions have different compilation methods. Here I am Take the latest 0.9.0 as an example
wget https://github.com/alanxz/rabbitmq-c/archive/v0.9.0.tar.gz tar xf v0.9.0.tar.gz cd rabbitmq-c-0.9.0/ mkdir build && cd build cmake .. make make install
Install the project... -- Install configuration: "Release" -- Installing: /usr/local/lib64/pkgconfig/librabbitmq.pc -- Installing: /usr/local/lib64/librabbitmq.so.4.3.0 -- Installing: /usr/local/lib64/librabbitmq.so.4 -- Installing: /usr/local/lib64/librabbitmq.so -- Installing: /usr/local/lib64/librabbitmq.a -- Installing: /usr/local/include/amqp.h -- Installing: /usr/local/include/amqp_framing.h -- Installing: /usr/local/include/amqp_tcp_socket.h -- Installing: /usr/local/include/amqp_ssl_socket.h
3. Download the latest stable version of amqp
wget https://pecl.php.net/get/amqp-1.9.4.tgz tar xf amqp-1.9.4.tgz cd amqp-1.9.4 /usr/local/php/bin/phpize
Just run it according to the location of your phpize (if you don’t know where phpize is, just find / -name phpize search), after running, the following information will be prompted, and then compile
Configuring for: PHP Api Version: 20160303 Zend Module Api No: 20160303 Zend Extension Api No: 320160303
4. Compile the extension module
./configure --with-php-config=/usr/local/php/bin/php-config make make install
After the execution is completed, the directory /usr/local/php/lib where the extension module is compiled will be displayed. /php/extensions/no-debug-non-zts-20160303/
5. Modify php.ini to add extension
extension_dir = "/usr/local/php/lib/php/extensions/no-debug-non-zts-20160303/" extension=amqp.so
Note: If the extension_dir path has been configured before, you only need to configure it extension=amqp.so
Save and exit, restart php
You can see through phpinfo that the extension has taken effect
More For related PHP7 content, please visit: "PHP7" Tutorial
The above is the detailed content of How to install amqp extension in php7 (based on Centos6.x). For more information, please follow other related articles on the PHP Chinese website!