apache2: Perl версия lib (5.28.1) не соответствует исполняемой версии '/ usr / sbin / apache2' (5.20.2) - PullRequest
0 голосов
/ 17 марта 2020

Я установил Debian 10, чтобы перенести веб-сервер с одного компьютера на этот компьютер Debian 10. Веб-сервер, основанный на apache2, нуждается в mod_ perl. Модуль не был найден на новой машине, поэтому я установил perl5.28 (и был добавлен mod_ perl .so). Но теперь кажется, что есть несоответствие между предыдущей perl версией (5.20) и последней (5.28). Я использую двоичный код perl для v5.28, @ IN C содержит каталоги, связанные с v5.28 (согласно "env -i perl -V"). Но когда я пытаюсь запустить сервер apache2, я получаю эту ошибку: «apache2: Perl версия lib (5.28.1) не соответствует исполняемой версии / usr / sbin / apache2 '(5.20.2)». Кто-нибудь может помочь? Большое спасибо заранее.

1 Ответ

1 голос
/ 17 марта 2020

Когда вы строили apache с mod_ perl, вы использовали v5.20, но, похоже, его больше нет. Различные версии Perl не гарантируются (или даже не пытаются) быть двоично-совместимыми. Между версиями Perl вам, вероятно, придется перекомпилировать все модули XS.

Вам нужно перекомпилировать apache с Perl, который вы хотите использовать, или установить Perl который apache хочет использовать. На этот раз вы можете статически скомпилировать mod_ perl в apache.

Однако эта проблема не указана c до Perl. Многие библиотеки программного обеспечения будут жаловаться аналогичным образом при замене библиотеки, с которой они скомпилированы.

...