Проблемы с установкой модуля PHP PECL sphinx

Я установил двоичные файлы и библиотеки sphinx и теперь пытаюсь установить модуль sphinx PECL.

Моя система работает под управлением OS X 10.6 с установленным MAMP 1.8.2. Я пытаюсь установить sphinx, используя следующую команду:

sudo pecl install sphinx

Команда PECL выводит следующее:

running: phpize
Configuring for:
PHP Api Version:         20090626
Zend Module Api No:      20090626
Zend Extension Api No:   220090626

Приведенные выше версии не соответствуют версиям, указанным при выполнении phpinfo(). Кажется, что PECL пытается соответствовать встроенной версии PHP.

Если я проигнорирую ошибки и продолжу, он будет успешно скомпилирован и поместит файл sphinx.so в:

/usr/lib/php/extensions/no-debug-non-zts-20090626/sphinx.so

когда на самом деле это должно быть:

/Applications/MAMP/bin/php5/lib/php/extensions/no-debug-non-zts-20060613/

Я попытался скопировать файл sphinx.so в каталог расширений MAMP, но при перезапуске apache PHP отображается следующее предупреждение:

PHP Startup: Unable to load dynamic library '/Applications/MAMP/bin/php5/lib/php/extensions/no-debug-non-zts-20060613/sphinx.so

Я думаю, это потому, что MAMP 32-битный, а встроенный PHP 64-битный, поэтому PECL соответствует 64-битному. Я могу быть совершенно не прав, но я прочитал это, когда гуглил по теме.

Кто-нибудь знает, как заставить PECL отображать версию PHP MAMP вместо встроенной версии?


person Camsoft    schedule 13.03.2010    source источник


Ответы (1)


Если "правильная" версия PHP установлена ​​где-то наподобие /Applications/MAMP/bin/php5/ и включает в себя средства разработки, у вас должна быть какая-то версия команды pecl, какая-то рядом с этим каталогом.

Если это так, запуск этой команды pecl, соответствующей вашей "правильной" версии PHP, должен помочь: она запустит правильную версию phpize и позволит расширению быть скомпилирован с (еще раз) правильной версией PHP.

Вам просто нужно надеяться, что MAMP включает эти команды -- я не могу проверить, так как у меня нет Mac.

person Pascal MARTIN    schedule 13.03.2010