Я выполнял тестовое обновление с Apache 2.2 до 2.4.3. Я использую Ubuntu 10.04. Я бы обновился до 12.04, чтобы увидеть, будет ли обновление проходить более плавно. К сожалению, мне сказали, что это не вариант ... поэтому я застрял на 10.04.
Я сделал это следующим образом:
Прежде чем попытаться это сделать, мне удалось обновить APR с 1.3 до 1.4 и APR-UTIL, поскольку apache заранее сказал, что они являются предварительными условиями: http://apr.apache.org/download.cgi. Я взял apr и apr-util и поместил их в httpd-2.4.3 / srclib
Я также принял совет Шлауберга относительно удаления libapr. Так что я удалил все следы, когда удалил все следы текущего apache.
Сначала удалите все следы текущего apache:
sudo apt-get --purge remove apache2
sudo apt-get remove apache2-common apache2-utils apache2.2-bin apache2-common
sudo apt-get autoremove
whereis apache2
sudo rm -Rf /etc/apache2 /usr/lib/apache2 /usr/include/apache2
После этого я сделал следующее:
sudo apt-get install build-essential
sudo apt-get build-dep apache2
Затем установите apache 2.4 со следующим:
wget http://www.bizdirusa.com/mirrors/apache//httpd/httpd-2.4.3.tar.gz
tar -xzvf httpd-2.4.3.tar.gz
cd
wget http://mirror.olnevhost.net/pub/apache//apr/apr-1.4.6.tar.gz
tar -xzvf apr-1.4.6.tar.gz
mv apr-1.4.6 apr
cd
wget http://mirror.olnevhost.net/pub/apache//apr/apr-util-1.4.1.tar.gz
tar -xzvf apr-util-1.4.1.tar.gz
mv apr-util-1.4.1 apr-util
cd
Place folders apr and apr-util under /httpd-2.4.3/srclib
sudo cp -r apr-util ~/httpd-2.4.3/srclib
sudo cp -r apr ~/httpd-2.4.3/srclib
cd
download pcre-8.31.tar.gz from http://sourceforge.net/projects/pcre/files/pcre/8.31/
Please note that pcre-8.31 isn't obtainable through the wget but needs to be done manually through sourceforge.
tar -xzvf pcre-8.31.tar.gz && cd pcre-8.31
sudo ./configure
sudo make
sudo make install
cd
cd httpd-2.4.3
sudo ./configure --prefix=/usr/local/apache2 --enable-mods-shared=all --enable-deflate --enable-proxy --enable-proxy-balancer --enable-proxy-http --with-mpm=prefork --with-included-apr --with-included-apr-util
sudo make
sudo make install
После этого процесса. Больше не выдает ошибку при установке. Однако я думаю, что мне не хватает шага, потому что он не находится в / etc / apache2, и если я использую команду, использующую apache, терминал сообщает мне, что он не установлен. Может ли кто-нибудь сказать мне, что мне не хватает после make install.
Заранее благодарим за любую помощь, которую вы можете предложить!
Скорее всего, в вашей системе есть другой libapr. Сначала я удалил libapr, поставляемый с системой, что вызвало ошибку компиляции. Затем я очистил все, кроме источника, который нашел через
locate apr
Еще одна программа make clean и make install устранила мою проблему