PHP не может загрузить динамическое расширение (недопустимый заголовок ELF) [PHP + Zephir]
Есть небольшая проблема здесь. Я собрал пример плагина Zephir на моей машине, который отлично работает на рабочей станции, но когда я его перемещаю, например. к производственному серверу я получаю эту странную ошибку php:
Запуск PHP: невозможно загрузить динамическую библиотеку '/mod/utils.so' - /mod/utils.so: неверный заголовок ELF в поле Неизвестно в строке 0
Путь в порядке, потому что, когда файл отсутствует в dir, php throws file not found error.
Гугл мне ничего не сказал. Похоже, никто никогда не сталкивался с такой проблемой. Есть идеи?
1 ответ
"Недопустимый заголовок ELF" означает, что ваша самостоятельно скомпилированная разделяемая библиотека не совместима с системой на вашем производственном сервере. Здесь было бы здорово узнать особенности / различия между вашей рабочей станцией и производственной средой. Это потому, что ваша библиотека была скомпилирована на вашей рабочей станции для вашей рабочей станции. Компиляция этого на рабочем сервере является идеей baaaaad, вы должны попытаться получить предварительно скомпилированную библиотеку и установить ее там, или, если вы не можете ее найти, скомпилируйте библиотеку в той же среде, что и на вашем производственном компьютере, и затем установите ее на производственная машина. Надеюсь, это поможет.