Home  >  Article  >  Backend Development  >  How to install amqp extension in php7 (based on Centos6.x)

How to install amqp extension in php7 (based on Centos6.x)

藏色散人
藏色散人forward
2019-12-04 10:09:112881browse

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

How to install amqp extension in php7 (based on Centos6.x)

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!

Statement:
This article is reproduced at:whsir.com. If there is any infringement, please contact admin@php.cn delete