На новом EC2 я столкнулся с одной проблемой при компиляции httpd. Похоже, что код Apache не может найти функции / определения функций из библиотек.
Шаги, которые я предпринял с новым RHEL для установки httpd.
sudo yum install gcc
extracted apr's and apr's source in respective directories under srclib of httpd source code
compiled latest pcre
sudo yum install pcre-devel (because of error cannot find pcre.h while ./configure)
./configure --with-included-apr --prefix='/server/httpd/httpd-2.4.17' --with-pcre='/usr/local/bin/pcre-config' --with-ssl='/usr/bin/openssl'
make
на этапе make install все идет нормально некоторое время, а затем появляется следующий массив ошибок. Думаю, все ошибки связаны.
/server/httpd/httpd-2.4.17-source/server/util_pcre.c:104: undefined reference to `pcre_free'
server/.libs/libmain.a(util_pcre.o): In function `ap_regcomp':
/server/httpd/httpd-2.4.17-source/server/util_pcre.c:138: undefined reference to `pcre_compile2'
/server/httpd/httpd-2.4.17-source/server/util_pcre.c:151: undefined reference to `pcre_fullinfo'
server/.libs/libmain.a(util_pcre.o): In function `ap_regexec_len':
/server/httpd/httpd-2.4.17-source/server/util_pcre.c:207: undefined reference to `pcre_exec'
server/.libs/libmain.a(util_pcre.o): In function `ap_regname':
/server/httpd/httpd-2.4.17-source/server/util_pcre.c:269: undefined reference to `pcre_fullinfo'
/server/httpd/httpd-2.4.17-source/server/util_pcre.c:271: undefined reference to `pcre_fullinfo'
/server/httpd/httpd-2.4.17-source/server/util_pcre.c:273: undefined reference to `pcre_fullinfo'
После некоторого поиска в Google я обнаружил, что могу ли я исправить способ вызова gcc в Makefile, это могло бы решить проблему, но я даже не могу найти термин «gcc» в Makefile.
Пожалуйста помоги.
Я могу легко воспроизвести это на своей локальной машине Ubuntu, выполнив те же действия. для установки Ubuntu libpcre3-dev вместо того pcre-devel
Потратив более 20 часов на эту проблему, я нашел решение.
Последняя версия pcre pcre2-10.10 Когда я переустановил (скомпилировал из исходников) pcre с более старой версией pcre-8.38, компиляция прошла без ошибок.
make clean (because wrong tries with ./configure messes up the Makefile)
./configure <options>
make
make install