Компиляция расширений php для MAMP

Мне нужно установить несколько расширений PHP, таких как memcache и geoip, на MAMP 3.5, для PHP 5.6.10.

Что я делаю, так это запускаю phpize:

/Applications/MAMP/bin/php/php5.6.10/bin/phpize

Какие выводы:

Конфигурирование для:

PHP Api версия: 20131106

Zend Module Api No: 20131226

Расширение Zend Api №: 220131226

Затем настройте:

/configure --with-php-config=/Applications/MAMP/bin/php/php5.6.10/bin/php-config

А потом попробуйте собрать с make. Вот где я получаю эту ошибку:

/Applications/MAMP/bin/php/php5.6.10/include/php/Zend/zend.h:51:11: fatal error: 'zend_config.h' file not found

Я скачал содержимое папки include/php с php.net, версия 5.6.10 (находится здесь).

Я чувствую, что сейчас ближе к решению этой проблемы, но я в растерянности с этой ошибкой. Что я делаю не так, так что, видимо, в только что загруженном php с php.net отсутствуют файлы?

Спасибо.

1 ответ

Решение

В итоге я использовал pecl вместо того, чтобы вручную компилировать расширения.

Заголовки, пропущенные на этапе make, были: "Я не запускал./configure в папке php" - я случайно наткнулся на этот шаг.

После этого все, что мне нужно было сделать, это запустить:

sudo /Applications/MAMP/bin/php/php5.6.10/bin/pecl install memcache

И все было на колесах.

Перед тем, как попробовать pecl, я попытался запустить make, как делал на своем посте, и расширение успешно скомпилировалось, но у меня было несоответствие версий между php и расширением. Ранее я безуспешно пробовал pecl, но я не знаю, что изменилось в моей конфигурации с тех пор, как я в последний раз пытался.


Во всяком случае, я написал суть всех моих шагов, чтобы заставить это работать, в случае, если у кого-то есть такая же проблема и я начинающий в этом вопросе, как и я.

Другие вопросы по тегам