Я жажду наказания, и чтобы доказать это, я взял себе сервер и попытался собрать весь стек LAMP самостоятельно.Затем я столкнулся с проблемой, когда во время конфигурирования / сборки / установки httpd я обнаружил, что мой скомпилированный apr-util, похоже, неправильно подхватывает apr-iconv.Последовательность:
- configure / make / install apr-1.4.5.
- configure / make / install apr-iconv-1.2.1
- configure /make / install apr-util-1.3.12
- configure / make / install httpd-2.2.21
Все апр построено нормально, но когда я попытался "сделать" httpd, Я получил это сообщение:
make[3]: Leaving directory `/root/software/httpd-2.2.21/modules/mappers'
make[2]: Leaving directory `/root/software/httpd-2.2.21/modules/mappers'
make[1]: Leaving directory `/root/software/httpd-2.2.21/modules'
Making all in support
make[1]: Entering directory `/root/software/httpd-2.2.21/support'
make[2]: Entering directory `/root/software/httpd-2.2.21/support'
/usr/local/apr/build-1/libtool --silent --mode=compile gcc -g -O2 -pthread -DLINUX=2 -D_REENTRANT -D_GNU_SOURCE -D_LARGEFILE64_SOURCE -I/root/software/httpd-2.2.21/srclib/pcre -I. -I/root/software/httpd-2.2.21/os/unix -I/root/software/httpd-2.2.21/server/mpm/prefork -I/root/software/httpd-2.2.21/modules/http -I/root/software/httpd-2.2.21/modules/filters -I/root/software/httpd-2.2.21/modules/proxy -I/root/software/httpd-2.2.21/include -I/root/software/httpd-2.2.21/modules/generators -I/root/software/httpd-2.2.21/modules/mappers -I/root/software/httpd-2.2.21/modules/database -I/usr/local/apr/include/apr-1 -I/root/software/apr-util-1.3.12/../apr-iconv-1.2.1/include -I/usr/include -I/root/software/httpd-2.2.21/server -I/root/software/httpd-2.2.21/modules/proxy/../generators -I/usr/local/ssl/include -I/root/software/httpd-2.2.21/modules/ssl -I/root/software/httpd-2.2.21/modules/dav/main -prefer-non-pic -static -c htpasswd.c && touch htpasswd.lo
/usr/local/apr/build-1/libtool --silent --mode=link gcc -g -O2 -pthread -L/usr/lib -L/usr/local/ssl/lib -o htpasswd htpasswd.lo -lm /root/software/httpd-2.2.21/srclib/pcre/libpcre.la /usr/local/apr/lib/libaprutil-1.la -lgdbm /root/software/apr-util-1.3.12/../apr-iconv-1.2.1/lib/libapriconv.la -lexpat /usr/local/apr/lib/libapr-1.la -lrt -lcrypt -lpthread -ldl -lcrypt
libtool: link: cannot find the library `/root/software/apr-util-1.3.12/../apr-iconv-1.2.1/lib/libapriconv.la' or unhandled argument `/root/software/apr-util-1.3.12/../apr-iconv-1.2.1/lib/libapriconv.la'
make[2]: *** [htpasswd] Error 1
make[2]: Leaving directory `/root/software/httpd-2.2.21/support'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/root/software/httpd-2.2.21/support'
make: *** [all-recursive] Error 1
Единственная часть конфигурации, в которой я действительно не уверен, это настройка with-apr-iconv в скрипте настройки apr-util.Кажется странным ссылаться на другой исходный каталог вместо общих библиотек.Может кто-нибудь сказать мне, что я делаю не так?
Информация о сервере:
[root@server ~]# cat /etc/*-release
CentOS release 5.7 (Final)
[root@server ~]# uname -m
i686
Настройка скриптов:
Апр-1.4.5
./configure --enable-shared \
--enable-threads \
--enable-other-child
apr-iconv-1.2.1
./configure --with-apr=/usr/local/apr
apr-util-1.3.12
./configure --with-apr=/usr/local/apr/bin/apr-1-config \
--with-apr-iconv=../apr-iconv-1.2.1 \
--with-mysql=/usr \
--with-sqlite3=/usr \
--with-expat=/usr \
--with-gdbm=/usr
httpd-2.2.21
./configure --enable-authn-anon \
--enable-v4-mapped \
--enable-authz-owner \
--enable-auth-digest \
--disable-imagemap \
--enable-dav \
--enable-dav-fs \
--enable-dav-lock \
--enable-deflate \
--enable-expires \
--enable-headers \
--enable-info \
--enable-mime-magic \
--enable-proxy \
--enable-proxy-ajp \
--enable-proxy-http \
--enable-proxy-ftp \
--enable-proxy-balancer \
--enable-proxy-connect \
--enable-suexec \
--enable-rewrite \
--enable-so \
--enable-ssl \
--with-ssl=/usr/local/ssl \
--disable-userdir \
--enable-vhost-alias \
--with-mpm=prefork \
--enable-mods-shared=all \
--with-apr=/usr/local/apr/bin/apr-1-config \
--with-apr-util=/usr/local/apr/bin/apu-1-config