DEV Community

Marvelous Akpotu
Marvelous Akpotu

Posted on

Install PHP AMQP Extension on Mac

I spent several hours trying to set up PHP amqp extension on mac. When I finally got it to work, I created this post as a reference for myself in the future, and also to assist anyone trying to install it.

First, follow the usual steps to install rabbitmq from the URL:
https://rabbitmq.com/install-homebrew.html

After installing rabbitmq and adding it to your path, you can then follow these steps found in this URL:
https://blog.karatos.in/a?ID=00850-2e534416-7a8d-4bce-b77c-ea946f63e10c

The steps below are similar to the ones in the above URL, however, I had to modify it to make it work in my case.

Download the latest version of AMQP or any version of your choice from this URL: https://pecl.php.net/package/amqp

Extract the zipped file and visit it on your terminal.

$ cd/Users/***/Downloads/amqp-<VERSION>/amqp-<VERSION>
Enter fullscreen mode Exit fullscreen mode
$ phpize
Enter fullscreen mode Exit fullscreen mode
$ ./configure -with-php-config=/opt/homebrew/bin/php-config --with-amqp --with-librabbitmq-dir=/opt/homebrew/Cellar/rabbitmq-c/<VERSION>
Enter fullscreen mode Exit fullscreen mode

In my case, I ran the previous command with version 0.11.0 as seen below:
./configure -with-php-config=/opt/homebrew/bin/php-config --with-amqp --with-librabbitmq-dir=/opt/homebrew/Cellar/rabbitmq-c/0.11.0

Run the following commands:

$ make
Enter fullscreen mode Exit fullscreen mode
$ make test
Enter fullscreen mode Exit fullscreen mode
$ make install
Enter fullscreen mode Exit fullscreen mode

That's it. amqp should be installed by now. Next, you have to add the extension to your PHP configuration.

Open the php.ini file at /opt/homebrew/etc/php/8.1/php.ini, if the extension have been added (extension="amqp.so"), remove it and create ext-amqp.ini in the folder /opt/homebrew/etc/php/8.1/conf.d and add the following content:

[ampq]
extension="amqp.so"

Save the file and restart php.

$ brew services restart php
Enter fullscreen mode Exit fullscreen mode

Next, check if it amqp is installed successfully:

$ php -i|grep amqp
Enter fullscreen mode Exit fullscreen mode

Happy hacking 🚀

References

Oldest comments (1)

Collapse
 
leslieeeee profile image
Leslie

Have you tried ServBay.dev?
It's a much easier tool for PHP developers, providing a user-friendly experience, especially for beginners. It supports all versions of PHP, MariaDB, PostgreSQL, as well as Redis and Memcached. You can run multiple PHP instances simultaneously and switch between them effortlessly. It also offers easy updates without the need to configure environment variables. This tool has greatly simplified my PHP development and is definitely worth trying!