Я установил двоичные файлы и библиотеки sphinx и сейчас пытаюсь установить модуль PECL sphinx.
Моя система работает под управлением 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 вместо встроенной версии?
Если проблема все еще существует: вот ссылка и дополнительная информация: http://blog.achimbo.de/index.php/2010/05/03/installing-pecl-for-mamp/
Ура, ачим