Расширение 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.