¡darandandunguen!

PHP con soporte para Informix en Debian

Últimamente me estoy quebrando la cabeza intentando conseguir que uno de los servidores se comunique con la nueva centralita de mi empresa. El problema es que la centralita tiene una base de datos Informix corriendo sobre un windows2000 y los servidores están en Debian. Aún no lo he logrado del todo por lo que cualquiera ayuda es bienvenida, pero de momento voy avanzando.

Lo primero que hace falta es el CSDK de Informix. Una vez descargado y extraído encontrarás un fichero installclientsdk muy prometedor, dale permiso de ejecución y ejecútalo.

tar xvf clientsdk.2.90.UC3.LINUX.tar
chmod +x installclientsdk
./installclientsdk

Agua. Al final intenta instalar varios rpm con lo que tu Debian chillará. No hay problema, podemos instalar el paquete rpm (a chulos no nos va a ganar IBM, ¿verdad?)

apt-get install rpm
rpm -i clientsdkcontent.rpm

Agua de nuevo, error ridículo (no encuentra /bin/sh). No nos desmoralicemos aún. Tenemos el file-roller, el amigo de los niños para sacarnos de un apuro. Abrimos el rpm con él y veremos dentro la estructura de directorios que pretendía instalar, la copiamos en su sitio (/usr/local/informix puede valer) y ¡prueba superada! Por ahora.

Bien, el PHP no viene por defecto con soporte para Informix, así que toca compilar:

cd /usr/src
apt-src install php5

Ahora tendrás una carpeta con las fuentes del php5, dentro de ella debes editar el fichero php5.spec y añadir en la línea del .configure el parámetro –with-informix=[el_directorio_donde_hayas_instalado_el_CSDK_de_Informix]. Además el apt-src se encarga de bajar todas las dependencias. Ahora creamos e instalamos los paquetes.

apt-src build -i php5

En este momento, se supone que tienes los paquetes de PHP5 con soporte para informix instalados en tu sistema. Si te da un error al instalar el paquete libapache-php5, probablemente debas desinstalar manualmente el paquete libapache-php4 si lo tenías instalado.

apt-get remove --purge libapache-php4
apt-get -f install

Para que los nuevos paquetes binarios no machaquen los nuestros, ejecutaremos

echo -e "php5 hold"|dpkg --set-selections

Ahora en teoría ya está todo lo necesario. Pero la verdad es que sigo sin poder comunicarme con la Informix.

Be Sociable, Share!

Categorised as: Tutoriales


2 Comments

  1. Mario Valente dice:

    que tal…yo estoy tratando de hacer lo mismo, pero que ademas tenga soporte para los PDO de postgres, y para la forma anterior de conexion tamben…..pudiste solucional el tema??….el log del apache, te deica algo??

  2. manu dice:

    No, a los pocos días cambié de departamento y no pude terminar este tema (ya no tenía tiempo ni informix con la que probar). Lo siento, aunque si encuentras el problema, por favor, déjame un comentario explicando cómo, que aún tengo curiosidad por saber cual era el problema.