Войти

Показать полную графическую версию : [решено] Установка Apache из исходников (ошибка ./configure)


Strange_V
14-04-2007, 12:41
Собственно по сабжу, собрал так:
./configure
--prefix=/etc/httpd
--exec-prefix=/usr
--bindir=/usr/bin
--sbindir=/usr/sbin
--mandir=/usr/share/man
--sysconfdir=/etc/httpd/conf
--includedir=/usr/include/httpd
--libexecdir=/usr/lib/httpd/modules
--datadir=/var/www
--localstatedir=/var
--enable-access=shared
--enable-actions=shared
--enable-alias=shared
--enable-auth=shared
--enable-auth-dbm=shared
--enable-auth-digest=shared
--enable-autoindex=shared
--enable-cern-meta=shared
--enable-cgi=shared
--enable-cgid=shared
--enable-dav=shared
--enable-dav-fs=shared
--enable-dir=shared
--enable-env=shared
--enable-expires=shared
--enable-file-cache=shared
--enable-headers=shared
--enable-include=shared
--enable-log-config=shared
--enable-mime=shared
--enable-mime-magic=shared
--enable-negotiation=shared
--enable-rewrite=shared
--enable-setenvif=shared
--enable-speling=shared
--enable-ssl=shared
--enable-unique-id=shared
--enable-usertrack=shared
--enable-vhost-alias=shared
--enable-suexec=shared
--with-suexec-caller=www
--with-suexec-docroot=/var/www
--with-suexec-logfile=/var/log/httpd/suexec_log
--with-suexec-bin=/usr/sbin/suexec
--with-suexec-uidmin=500
--with-suexec-gidmin=500
--disable-auth-anon
--disable-charset-lite
--disable-disk-cache
--disable-mem-cache
--disable-cache
--disable-deflate
--disable-ext-filter
--disable-case-filter
--disable-case-filter-in
--disable-example
--disable-proxy
--disable-proxy-connect
--disable-proxy-ftp
--disable-proxy-http
--disable-status
--disable-asis
--disable-info
--disable-imap
--disable-userdir
--with-z
--enable-ssl
--with-suexec
Все чудно работает, но при сборке PHP на этапе ./configure ошибка, мол апач был собран без --enable-so.
Собираю наново добавив --enable-so --with-apr=srclib/apr --with-apr-util=srclib/apr-util (так как ругалось что нет APR), снова ошибка:
checking for APR... configure: error: the --with-apr parameter is incorrect. It must specify an install prefix, a build directory, or an apr-config file.
Чего он еще хочет?

P.S. юзал поиск, тем много, с такой проблемой нет..
ОС: Ubuntu 6.10 ядро 2.6.17

ruslandh
14-04-2007, 13:49
1 Посмотрите какие параметры выдает ./configure --help
2 Что за странные параметры в ./configure
Смотрю spec для apache 1.3.37

echo "### define configure flags"
APFLAGS=
"--serverroot=%apache_root \
--prefix=%prefix \
--bindir=%_bindir \
--sbindir=%_sbindir \
--mandir=%_mandir \
--sysconfdir=%_sysconfdir/httpd/conf \
--datadir=%apache_home \
--htdocsdir=%apache_home/html \
--includedir=%_includedir/apache \
--localstatedir=%_var \
--runtimedir=%_var/run \
--logfiledir=%_logdir/httpd \
--proxycachedir=%_cachedir/httpd \
--disable-rule=WANTHSREGEX \
--disable-rule=EXPAT \
--with-perl=%__perl \
--without-confadjust \
--enable-module=all \
--enable-module=auth_digest \
--disable-module=auth_dbm \
--enable-shared=max \
--enable-suexec \
--suexec-caller=%apache_user \
--suexec-docroot=%suexec_docroot \
--suexec-userdir=public_html \
--activate-module=src/modules/extra/mod_realip.o \
%if_with mod_accel
--activate-module=src/modules/accel/libaccel.a \
%endif
%if_with mod_deflate
--activate-module=src/modules/extra/mod_deflate.o \
%endif"

Или, если заменить макросы спека :

echo "### define configure flags"
APFLAGS="--serverroot=/etc/httpd \
--prefix=/usr \
--bindir=/usr/bin \
--sbindir=/usr/sbin \
--mandir=/usr/share/man \
--sysconfdir=/etc/httpd/conf \
--datadir=/var/www \
--htdocsdir=/var/www/html \
--includedir=/usr/include/apache \
--localstatedir=/var \
--runtimedir=/var/run \
--logfiledir=/var/log/httpd \
--proxycachedir=/var/cache/httpd \
--disable-rule=WANTHSREGEX \
--disable-rule=EXPAT \
--with-perl=/usr/bin/perl \
--without-confadjust \
--enable-module=all \
--enable-module=auth_digest \
--disable-module=auth_dbm \
--enable-shared=max \
--enable-suexec \
--suexec-caller=apache \
--suexec-docroot=/var/www \
--suexec-userdir=public_html \
--activate-module=src/modules/extra/mod_realip.o \
--activate-module=src/modules/extra/mod_deflate.o \
"

Ну и стандартные для всех пакетов значения макроса %configure (для x86_64):

./configure --build=x86_64-alt-linux --host=x86_64-alt-linux \
--prefix=/usr \
--exec-prefix=/usr \
--bindir=/usr/bin \
--sbindir=/usr/sbin \
--sysconfdir=/etc \
--datadir=/usr/share \
--includedir=/usr/include \
--libdir=/usr/lib64 \
--libexecdir=/usr/lib \
--localstatedir=/var/lib \
--sharedstatedir=/usr/com \
--mandir=/usr/share/man \
--infodir=/usr/share/info \
--disable-dependency-tracking \
--without-included-gettext

Strange_V
14-04-2007, 15:39
Вы правы, с параметрами я что-то намудрил.. переправил все согласно ./configure -h
--prefix=/etc/httpd
--exec-prefix=/usr
--bindir=/usr/bin
--sbindir=/usr/sbin
--mandir=/usr/share/man
--sysconfdir=/etc/httpd/conf
--includedir=/usr/include/httpd
--libexecdir=/usr/lib/httpd/modules
--datadir=/var/www
--localstatedir=/var
--enable-auth-dbm
--enable-auth-digest
--enable-cern-meta
--enable-cgi
--enable-cgid
--enable-dav
--enable-dav-fs
--enable-dir
--enable-expires
--enable-file-cache
--enable-headers
--enable-mime-magic
--enable-rewrite
--enable-speling
--enable-ssl
--enable-unique-id
--enable-usertrack
--enable-vhost-alias
--enable-suexec
--enable-ssl
--enable-so
--disable-charset-lite
--disable-status
--disable-asis
--disable-userdir
--with-suexec-caller=www
--with-suexec-docroot=/var/www
--with-suexec-logfile=/var/log/httpd/suexec_log
--with-suexec-bin=/usr/sbin/suexec
--with-suexec-uidmin=500
--with-suexec-gidmin=500
--with-apr=srclib/apr
--with-apr-util=srclib/apr-util
1. Есть опция --disable-alias (например), а --enablle-alias нет, я правильно понимаю, что если --disable-alias не указывать по-умолчанию соберется с enablle?
2. Все равно та же ошибка, может там не верные пути?
Вот что говорит хелп:
--with-apr=PATH prefix for installed APR, path to APR build tree,
or the full path to apr-config
--with-apr-util=PATH prefix for installed APU, path to APU build tree,
or the full path to apu-config
Кстати Apache 2.2.4

Немного изменилась ситуация

Указал --with-apr=/usr/bin/apr-1-config --with-apr-util=/usr/bin/apu-1-config начинает конфигурировать и
configure: error: APR-util version 1.2.0 or later is required
В apu-1-config пишет APRUTIL_DOTTED_VERSION="1.2.8", ничего не понимаю..

ruslandh
14-04-2007, 22:21
Тут надо уже лог ./configure смотреть - c чего он так решил.

Strange_V
14-04-2007, 23:25
ruslandh Спасибо, эту проблему вроде решил.
Собрал apr и apr-util руками, указал апачу где искать и, о чудо, все сконфигуриловалось на ура. Потом все так же успешно установилось.
Сначала при httpd -k start ругался на отсутствие error_log, поправил конфиг (путь был неверным) теперь ни на что не ругается и не запускается, ошибок не выводит, error_log пуст..
Буду очень признателен за подсказку.

Strange_V
15-04-2007, 17:44
Проблему я все-таки вычислил. Все банально, апач не знал куда писать PidFile (точнее он хотел записать в директорию которой нет), директива PidFile /var/run/httpd.pid все решила. Удивляет почему он об этом молчал..

forroboform
07-11-2010, 23:42
прошло три года ... наступил на те же грабли ... правда кофиг делаю совсем без доп настроек, что бы все по дефолту встало ... как бы кого попросиить по тимвиверу показать что делать надо?




© OSzone.net 2001-2012