Расширение PHP компилируется с более новой версией API, чем мой PHP

Это сводит меня с ума: я пытаюсь скомпилировать расширение php для библиотеки (www.phah.org), которое прекрасно компилируется, но когда я пытаюсь включить загрузку его с помощью php, у меня появляется следующее предупреждение (это на самом деле вывод make test):

PHP Warning:  PHP Startup: pHash: Unable to initialize module
Module compiled with module API=20100525
PHP    compiled with module API=20090626

Смущает то, что когда я делаю phpize перед компиляцией, он показывает правильную версию API:

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

Но он все еще скомпилирован с 20100525 (php 5.4) вместо 220090626 (php 5.3). Я потратил довольно много времени на поиск, но обнаружил, что у ppl есть противоположная проблема (расширение компиляции для более старой версии php).

Есть намеки?

1 ответ

Что ж, я понял это: вместо использования привязок php, поставляемых с источниками 0.9.6, вы можете использовать либо версию 0.9.4 отсюда https://github.com/sdepold/pHash, либо эту версию, поскольку она разветвлена с 0.9.6, https://github.com/Alexis2004/php-phash Оба компилируются без проблем с версией API. Похоже, это не от Zend.

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