Я пытаюсь установить Rabbit MQ и библиотеку php AMQP на Ubuntu 14.04, но при запуске apache получаю сообщение об ошибке (в журнале ошибок apache)
PHP Warning: PHP Startup: Unable to load dynamic library '/usr/lib/php5/20121212/amqp.so' - /usr/lib/php5/20121212/amqp.so: undefined symbol: amqp_error_string2 in Unknown on line 0
И AMQP не запускается.
Я следил за этим: https://github.com/pdezwart/php-amqp/issues/87
И...
locate librabbitmq.so
возвращает:
/usr/lib/librabbitmq.so.0
/usr/lib/librabbitmq.so.0.0.0
ls -al librabb * возвращает:
/usr/lib/librabbitmq.so.0 -> librabbitmq.so.0.0.0 (root / root)
librabbitmq.so.0.0.0 (root / root)
В / user / local / lib также есть:
librabbitmq.so -> /usr/lib/librabbitmq.so.0 (root / root)
Разрешения root / root и 755 на все.
Любая помощь, очень ценится.
Спасибо
Установка amqp через pecl у меня не сработала, поэтому мне пришлось самому скомпилировать клиентскую библиотеку RabbitMQ C AMQP и pecl amqp.
Клиентскую библиотеку RabbitMQ C AMQP можно найти по адресу https://github.com/alanxz/rabbitmq-c/ и Pecl amqp от http://pecl.php.net/package/amqp .
Вот список команд, которые должны помочь в ubuntu 14.04:
#create a directory for sources
mkdir ~/kit
cd ~/kit
#download and install the rabbitmq c amqp lib
wget https://github.com/alanxz/rabbitmq-c/releases/download/v0.5.1/rabbitmq-c-0.5.1.tar.gz
tar -zxvf rabbitmq-c-0.5.1.tar.gz
cd rabbitmq-c-0.5.1/
./configure
make
sudo make install
cd ..
#download and compile the amqp
wget http://pecl.php.net/get/amqp-1.4.0.tgz
tar -zxvf amqp-1.4.0.tgz
cd amqp-1.4.0/
phpize && ./configure --with-amqp && make && sudo make install
#Add amqp extension to php mods-availabile directory
echo "extension=amqp.so" > /etc/php5/mods-available/amqp.ini
#Enabled it in cli
cd /etc/php5/cli/conf.d/
ln -s ../../mods-available/amqp.ini 20-amqp.ini
php -m | grep amqp
#Enabled it in cli
cd /etc/php5/apache2/conf.d/
ln -s ../../mods-available/amqp.ini 20-amqp.ini
#restart Apache and than check phpinfo on web
service apache2 restart