Si en algún momento te has encontrado con la tarea de tener que realizar una instalación utilizando SVN e IBM HTTP Server, sabrás que no es una tarea fácil ya que IBM HTTP Server, aunque esta basado en el servidor Web Apache, no cuenta con los módulos de SVN como su contraparte.
El objetivo del procedimiento que se mostrará (dado que fue imposible compilar los módulos de svn directamente contra IBM HTTP Server), es compilar los módulos necesarios de subversión contra la misma versión utilizada por IBM para luego extraer los módulos SVN para su posterior uso. A continuación te presentamos los pasos a seguir.
NOTA: Es muy importante resaltar que los pasos mostrados en este post se sugieren como resolución alternativa.
Los componentes utilizados para esta instalación se detallan a continuación:
- Centos 5.5
- Apache 2.2.8
- IBM Http Server 7.0
- Openssl 0.9.8
- Subversion 1.6.11
- Utils de subversion 1.6.11
IBM HTTP SERVER:
1.- Descargamos el instalador de la versión 7 de IBM HTTP Server en la siguiente ruta: /usr/local/de/
# wget https://www6.software.ibm.com/sdfdl/v2/regs2//rederpj/Xa.2/Xb.UWefAKXz7zMhKTiuwPP-fqLwBcH0Mw4Mr85KueMcDw/Xc.ihs.7000.linux.ia32.tar/Xd./Xf.LPr.A6va/Xg.6698007/Xi.http/XY.regsrvs/XZ.bV--vjtJuzS4jux99pqF552u8XE/ihs.7000.linux.ia32.tar
2.- Descomprimimos el paquete con:
# tar xf ihs.7000.linux.ia32.tar
3.- Accedemos a la carpeta IHS
# cd IHS
4.- Ejecutamos el instalador :
# java -jar setup.jar
5.- Aceptamos la licencia y seguimos los pasos mostrados de instalación. Instalando nuestro HTTP Server en la siguiente Ruta: /usr/local/de/HTTPServer
OpenSSL
1.- Descargamos el paquete
# wget http://www.openssl.org/source/openssl-0.9.8e.tar.gz
2.- Descomprimimos
# tar zxvf openssl-0.9.8e.tar.gz # cd openssl-0.9.8e
3.- Compilamos
# ./config --prefix=/usr/local/de/openssl # make # make install
Apache 2.2.8
1.- Descargamos el paquete de apache de la siguiente URL
wget http://archive.apache.org/dist/httpd/httpd-2.2.8.tar.gz
2.- Descomprimimos
# tar zxvf httpd-2.2.8 # cd httpd-2.2.8
3.- Creamos el directorio final donde se compilara nuestro apache
# mkdir -p /usr/local/de/http
NOTA: Antes de empezar a compilar es necesario incluir la siguiente Flag export CC="gcc -m32". El cual compilara nuestro apache y Subversión en 32 bits.La Razón de ésto es que aun que se descargo IBM HTTP SERVER x64, el paquete se encuentra compilado para 32bits. Por lo tanto debemos de compilar Apache y SVN de la misma manera
4.- Incluimos la siguiente FLAG
# export CC="gcc -m32"
5.- Compilamos con la siguiente línea:
a.-Antes de compilar instalamos las siguientes librerías en el siguiente orden: yum install glibc-devel.i386 glibc-devel.x86_64 yum install apr-devel.i386 apr-devel.x86_64 yum install openldap-devel.i386 openldap-devel.x86_64 openldap.i386 openldap.x86_64 yum install libgcj-devel.i386 libgcj-devel.x86_64 yum install zlib.i386 zlib-devel.i386 b.- Compilamos con la siguiente línea: # ./configure --prefix=/usr/local/de/http --enable-proxy-ajp --enable-proxy --enable-proxy-http --with-ldap --with-ssl=/usr/local/de/openssl/ --enable-mods-shared="all dav" --enable-so --enable-authnz-ldap --with-ldap-lib=/usr/lib --with-included-apr #make #make install
Subversión
1.- Descargamos el paquete de la siguiente URL
# wget http://archive.apache.org/dist/subversion/subversion-1.6.11.tar.gz
2.- Descomprimimos los paquetes:
# tar zxvf subversion-1.6.11.tar.gz # cd subversion-1.6.11
3.- Descargamos el paquete que contiene las dependencias de subversión:
# wget http://subversion.tigris.org/downloads/subversion-deps-1.6.11.tar.gz
4.- Creamos la carpeta que contendra SVN
# mkdir -p /usr/local/de/svn
5.- Descomprimimos las dependencias
# tar zxvf subversion-deps-1.6.11.tar.gz
NOTA: A Partir de este punto se instalan dependencias necesarias para SVN
SQLITE
1.- Accedemos a la carpeta
# cd subversion-1.6.11/sqlite-amalgamation
2.- Creamos la carpeta que contendra SQLITE
# mkdir -p /usr/local/de/svn/sqlite-amalgamation
3.- Compilamos con la siguiente línea:
# ./configure --prefix=/usr/local/de/svn/sqlite-amalgamation/ --enable-threadsafe # make # make install
NEON
1.-Accedemos a la carpeta
# cd subversion-1.6.11/neon
2.- Creamos la carpeta que contendra NEON
# mkdir -p /usr/local/de/svn/neon
3.- Instalamos las siguientes librerías:
yum install libxml2.i386 libxml2-devel.i386
3.- Compilamos con la siguiente línea:
# ./configure --prefix=/usr/local/de/svn/neon
ZLIB
1.-Accedemos a la carpeta
# cd subversion-1.6.11/zlib
2.- Creamos la carpeta que contendra ZLIB
# mkdir -p /usr/local/de/svn/zlib
3.- Compilamos con la siguiente línea:
# ./configure --prefix=/usr/local/de/svn/zlib/ # make # make install
SUBVERSIÓN
1.-Accedemos a la carpeta
# cd $Directorio_descarga/subversion-1.6.11
2.- Instalamos las siguientes librerías necesarias:
yum install expat.i386 expat.x86_64 expat-devel.i386 expat-devel.x86_64
3.- Compilamos con la siguiente línea:
# ./configure --prefix=/usr/local/de/svn --with-apxs=/usr/local/de/http/bin/apxs --with-apr=/usr/local/de/http --with-apr-util=/usr/local/de/http --with-sqlite=/usr/local/de/svn/sqlite-amalgamation/ --with-neon=/usr/local/de/svn/neon/ --with-zlib=/usr/local/de/svn/zlib/
# make
# make install
Pasos Finales
- Una vez terminamos de compilar svn, los módulos mod_dav_svn y authz_svn se encontrarán en la siguiente ruta:
/usr/local/de/http/modules -rwxr-xr-x 1 root root 573591 Aug 22 05:24 mod_dav_svn.so -rwxr-xr-x 1 root root 33791 Aug 22 05:24 mod_authz_svn.so
- copiamos estos módulos a la carpeta de http ibm
/usr/local/de/HTTPServer/modules
- Añadimos las siguientes líneas en el fichero de configuración http.conf
LoadModule dav_svn_module modules/mod_dav_svn.so LoadModule authz_svn_module modules/mod_authz_svn.so

