jx_post_1025_01

Instalar Apache desde código fuente en GNU/Linux

Hace ya 10 años publiqué un post en mi antiguo blog llamado igual:

Instalar Apache desde código fuente en GNU/Linux

En el cuál explicaba como instalar Apache en distribuciones GNU/Linux y Unix, hoy sólo actualizaré y lo sintetizaré ya que actualmente hay que compilar previamente el Apache Portable Runtime (APR) para que podamos instalar Apache.

Descargamos los siguientes paquetes:

apr-1.6.3.tar.bz2

apr-util-1.6.1.tar.bz2

apr-iconv-1.2.2.tar.bz2

httpd-2.4.29.tar.bz2

Para comenzar nos convertiremos en usuario root.

javoaxian@vboxlinuxmintjx $ sudo su -

En mi caso los descargué en mi directorio de Descargas, nos situamos en el directorio donde descargamos los paquetes y los colocamos en /usr/local/src para después instalarlos.

root@vaiolinuxmintjx $ cd /ruta/donde/descargamos
root@vboxlinuxmintjx $ cp apr-* /usr/local/src/
root@vboxlinuxmintjx $ cp httpd-2.4.29.tar.bz2 /usr/local/src/
root@vboxlinuxmintjx $ cd /usr/local/src/

Comenzaremos instalando apr.

root@vboxlinuxmintjx $ tar -jxvf apr-1.6.3.tar.bz2
root@vboxlinuxmintjx $ cd apr-1.6.3/
root@vboxlinuxmintjx $ ./configure --prefix=/usr/local/apr

Es posible que en esta parte, mande algunos errores de dependencia, como por ejemplo que no tienen instalado gcc, o los fuentes de GCC como es el paquete libc6-dev.

Para instalarlos en sistemas basados en Debian, como Ubuntu, simplemente ejecuten el comando apt-get install con los paquetes que vayan necesitando, por ejemplo:

root@vboxlinuxmintjx $ apt-get install gcc libc6-dev

Ahora seguimos con la instalación.

root@vboxlinuxmintjx $ make
root@vboxlinuxmintjx $ make install

Ahora instalamos apr-utils.

root@vboxlinuxmintjx $ cd /usr/local/src/
root@vboxlinuxmintjx $ tar -jxvf apr-util-1.6.1.tar.bz2
root@vboxlinuxmintjx $ cd apr-util-1.6.1/
root@vboxlinuxmintjx $ ./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr

Si obtenemos el siguiente error:

xml/apr_xml.c:35:19: fatal error: expat.h: No existe el archivo o el directorio
compilation terminated.
/usr/local/src/apr-util-1.6.1/build/rules.mk:206: fallo en las instrucciones para el objetivo 'xml/apr_xml.lo'
make[1]: *** [xml/apr_xml.lo] Error 1
make[1]: se sale del directorio '/usr/local/src/apr-util-1.6.1'
/usr/local/src/apr-util-1.6.1/build/rules.mk:118: fallo en las instrucciones para el objetivo 'all-recursive'
make: *** [all-recursive] Error 1

Instalaremos el siguiente paquete:

root@vboxlinuxmintjx $ apt-get install libexpat1-dev

Continuamos la instalación:

root@vboxlinuxmintjx $ make
root@vboxlinuxmintjx $ make install

Ahora instalamos apr-iconv.

root@vboxlinuxmintjx $ cd /usr/local/src/
root@vboxlinuxmintjx $ tar -jxvf apr-iconv-1.2.2.tar.bz2
root@vboxlinuxmintjx $ cd apr-iconv-1.2.2/
root@vboxlinuxmintjx $ ./configure --prefix=/usr/local/apr-iconv --with-apr=/usr/local/apr
root@vboxlinuxmintjx $ make
root@vboxlinuxmintjx $ make install

Ahora procederemos a instalar apache.

root@vboxlinuxmintjx $ cd /usr/local/src/
root@vboxlinuxmintjx $ tar -jxvf httpd-2.4.29.tar.bz2
root@vboxlinuxmintjx $ cd httpd-2.4.29/
root@vboxlinuxmintjx $ ./configure --prefix=/usr/local/apache --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util --enable-so

Si nos aparece el siguiente error:

checking for pcre-config... false
configure: error: pcre-config for libpcre not found. PCRE is required and available from http://pcre.org/

Instalamos el siguiente paquete:

root@vboxlinuxmintjx $ apt-get install libpcre3-dev

Continuamos con la instalación:

root@vboxlinuxmintjx $ make
root@vboxlinuxmintjx $ make install

Con esto ya queda instalado apache, para arrancar el servidor bastará ejecutar lo siguiente:

root@vboxlinuxmintjx $ /usr/local/apache/bin/apachectl start

Y para detenerlo:

root@vboxlinuxmintjx $ /usr/local/apache/bin/apachectl stop

En mi caso me gusta agregar la ruta de las herramientas en el PATH de todos los usuarios, para ello hay que editar el archivo como usuario root:

/etc/profile

y agregamos las siguientes líneas:

export APACHE=/usr/local/apache
export PATH=$PATH:$APACHE/bin

Si se desea más información, como configurar un script de arranque y otras cosas, visita mi viejo post.

4 thoughts on “Instalar Apache desde código fuente en GNU/Linux”

  1. Muchas gracias, esta guia de instalación de Apache es muy fácil de seguir porque has utilizado las ordenes paso a paso con descripciones de los errores y fallos mas comunes. Me ha sido de mucha ayuda.

  2. hola me topé con este error al momento de hacer el make para la instalacion de apache

    collect2: ld returned 1 exit status
    make[2]: *** [htpasswd] Error 1
    make[2]: se sale del directorio `/usr/local/src/httpd-2.4.38/support’
    make[1]: *** [all-recursive] Error 1
    make[1]: se sale del directorio `/usr/local/src/httpd-2.4.38/support’
    make: *** [all-recursive] Error 1

    Podrias apoyarme con tu retro?

    1. No tienes un poco más de información de la salida que te da cuando realizas el make? o son los únicos mensajes de error que te manda?

      Si tienes toda la salida del make, quizá podamos ver un poco más lo que pasó.

      Saludos!!!

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos necesarios están marcados *