Debian Squeeze - Php5 con soporte para Informix

Queremos tener un php5 con soporte nativo para informix (sin odbc).

Primero bajamos e instalamos el SDK de Informix en /usr/local/informix.
Está funcionando vía odbc (/etc/odbcinst.ini y odbc.ini). Lo probamos con isql contra el servidor de informix y responde las consultas a la base.

Luego instalamos las fuentes del php5:
apt-src install php5
./configure --with-informix=$INFORMIXDIR

Acá nos tira un aviso, al terminar el config:

" Thank you for using PHP.

Notice: Following unknown configure options were used:

–with-informix=/usr/local/informix

Check ‘./configure --help’ for available options

Gracias por su ayuda.

ANA - UNNOBA

Hola Ana, creo que el problema esta en la version del PHP que estas usando, Si la version de PHP que usas es la 5.2.9, creo que no tiene soporte para Informix, creo que la ultima version que tiene soporte para informix es la 5.2.0. Realmente no estoy muy seguro, pero me pasaba algo parecido hace un tiempo atras y era eso, el php ya no tiene soporte para informix, solo tuve que cambiar la version del php.
Por otro lado, como hiciste para instalar el php, desde los fuentes o con aptitude? si es desde los fuentes tienes que compilar todo de nuevo, o sea:
./configure --with-apache --with-informix=/opt/informix/ --with…

Saludos!!

Ricardo.

Hola Ana:
El soporte de PHP para informix por librerias nativas salio hasta la version 5.2.0 como dice Ricardo, en adelante de la 5.2.0 lo tenes uqe hacer con soporte con PDO, pero si estas en la version 5.2.9 (ultima version) ya no se puede ni compilando, como estas tratando de hacer (apt-src install php5)…se simplifica con pecl y pear…ya te voy a enviar un documento de como hacerlo…o si queres en la pagina de PHP explica como hacerlo con mysql, análogo para informix…

Saludos!!

Hola Marcelo, vuelvo a iniciar este post, espero que no este mal hacerlo, pero estoy teniendo un problema con el PHP5.2.6 y el informix, instale todo desde los repositorios y al final instale usando pecl las pdo_informix, cuando hago phpinfo(); veo que si aparece el informix pero el sistema me da este error cuando quiero ingresar:

Fatal error: Call to undefined function ifx_error() in /var/www/php/adodb/drivers/adodb-informix72.inc.php on line 144

Realmente no se que puede pasar porque el informix esta instalado y el php si lo reconoce…

Hola Ricardo

en los parametros del sitio web que pusistes? informix o pdo_guarani?

Emilio

Hola Marcelo, en redes están tratando de actualizar las versiones del php y me pidieron si podrías enviarnos ese documento del que hablás. Saludos y gracias!

Hola gente perdón por la demora en la respuesta.
lo que deben hacer es lo siguiente, para que soporte la conexión a informix por pdo_informix:

seguir el documento que hizo un tecnico de Tucuman, mienstras ibamos instalando el cliente informix (esta bien detallado), la unica diferencia está en que en el paso 10 del documento,

  1. Instalas el soporte para informix
    pear install xml_rpc (esto si hacer)
    pecl install --alldeps pdo_informix (esto cambiar por lo que sigue abajo)

la vamos a cambiar por los siguientes cambios:

descargar el pdo_informix del siguiente link

http://pecl.php.net/package/PDO_INFORMIX

descomprimimos, accedemos al directorio descomprimido y hacemos la configuracion previa a la compilación
#tar xvfz PDO_INFORMIX-1.3.0.tgz
#cd PDO_INFORMIX-1.3.0
#phpize
#./configure

nos va a dar un error, lo corregimos de la siguiente manera:

#nano configure

elif test -f $prefix/include/php/ext/pdo/php_pdo_driver.h; then
pdo_inc_path=$prefix/include/php/ext
else
as_fn_error “Cannot find php_pdo_driver.h.” “$LINENO” 5

Cambialas por:

elif test -f $prefix/include/php5/ext/pdo/php_pdo_driver.h; then
pdo_inc_path=$prefix/include/php5/ext
else
as_fn_error “Cannot find php_pdo_driver.h.” “$LINENO” 5

Guardamos los cambios.
Para que se entieda, lo unico que se agrego es el 5 en el path, ya que en nuestro debian la carpeta es php5 no php

luego volvemos a configurar:

#./configure
#make
#make install

si todo salio bien nos genero un archivo pdo_informix.so

Ahora hay que copiar el archivo o modulo pdo_informix.so a la carpeta donde tengas instalados los modulos dinamicos, en debian se encuentran en /usr/lib

ahora editamos el archivo PDO.INI para especificar la extension de pdo_informix.so

el archivo pdo.ini se encuentra en: /etc/php5/conf.d/pdo.ini

Editamos y agregamos esta linea → extension=pdo_informix.so

Quedaria de la siguiente forma:

; configuration for php PDO module
extension=pdo.so
extension=pdo_informix.so

rebooteamos el apache y deberiamos ver en el phpinfo el soporte con pdo_informix

luego seguimos el documento y un dato adicional es que debemos agregar en el archivo

/etc/apache2/envvars

las variables de entorno:

INFORMIXDIR=/opt/informix 
INFORMIXSERVER=ol_desarrollo
DBDATE=DMY4/ 
export INFORMIXDIR INFORMIXSERVER DBDATE

export PATH=$PATH:/opt/informix/bin

y rebotear el apache luego de estos cambios…

Saludos!
Marcelo


UNT - instalar cliente informix linux.rar (22 KB)