2010-03-13 4 views
0

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

Моя система работает под управлением ОС X 10.6 с установленным MAMP 1.8.2. Я пытаюсь установить сфинкс с помощью следующей команды:

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/

Я ve попытался скопировать файл sphinx.so в реестр MAMP extensions, но при перезапуске 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 вместо встроенной версии?

ответ

2

Если версия «правильно» РНР установлен в чем-то вроде /Applications/MAMP/bin/php5/, и имеет средства разработки включены, вы должны иметь версию команды pecl пойти с ним, некоторые рядом с этой директории.

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

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