Как восстановить ошибку компиляции apache2.2?

485
Nide

Мое требование состоит в том, чтобы скомпилировать и установить httpd 2.2 из исходного кода, все модули должны быть общими?

Выдал команду configure вот так.

./configure --enable-shared-mods="all" --prefix=/path/to/install 

Команда Configure выполнена успешно, но когда я начинаю компилировать, она выдает мне такую ​​ошибку.

/bin/sh /usr/local/source3/httpd-2.2.2/shlibtool --silent --mode=link gcc -pthread -o mod_authn_file.la -rpath /usr/local/task03/modules -module -avoid-version mod_authn_file.lo  /bin/sh: /usr/local/source3/httpd-2.2.2/shlibtool: No such file or directory make[4]: *** [mod_authn_file.la] Error 127 make[4]: Leaving directory `/usr/local/source3/httpd-2.2.2/modules/aaa' make[3]: *** [shared-build-recursive] Error 1 make[3]: Leaving directory `/usr/local/source3/httpd-2.2.2/modules/aaa' make[2]: *** [shared-build-recursive] Error 1 make[2]: Leaving directory `/usr/local/source3/httpd-2.2.2/modules' make[1]: *** [shared-build-recursive] Error 1 make[1]: Leaving directory `/usr/local/source3/httpd-2.2.2' make: *** [all-recursive] Error 1 

Апач, как известно, показать эту проблему?

1

1 ответ на вопрос

0
telcoM

Я полагаю, у вас есть причины попытаться установить версию 2.2.2, выпущенную в апреле 2006 года, в отличие от версии 2.2.34, выпущенной в июле 2017 года, и остается последней версией серии Apache 2.2, которая была прекращена в конец 2017 года. Но в версии 2.2.2 будет много известных ошибок безопасности.

Важная часть, кажется, это сообщение:

/bin/sh: /usr/local/source3/httpd-2.2.2/shlibtool: No such file or directory 

Так:

  • Может /usr/local/source3/httpd-2.2.2/shlibtoolне существует? Но если команда configure выполнена без ошибок, это маловероятно.
  • Может быть, это символическая ссылка, указывающая на недопустимую цель? В таком случае, какой будет эта цель? Беги, ls -l /usr/local/source3/httpd-2.2.2/shlibtoolчтобы увидеть.
  • Если это не символическая ссылка, возможно, это скрипт, который определяет интерпретатор, которого нет в вашей системе? Посмотрите на первую строку shlibtoolв этом случае.

В поиске на «shlibtool» это был первый хит: http://mail-archives.apache.org/mod_mbox//httpd-dev/200107.mbox/%3C000c01c107db $ 2ca92780 $ 9865fea9 @ cc230545b% 3E

Похоже, shlibtoolможет быть автоматически сгенерирован во время процесса настройки, если это необходимо, и вы libtoolустановили в вашей системе . У вас установлен libtool?

* /usr/local/source3/httpd-2.2.2/shlibtool не существует, и libtool установлен (версия 2.2.6, выпуск 15.5.ele). Я бы попытался скомпилировать его из 2.2.34 и проверить, работает ли это. Nide 5 лет назад 0