Hola,
Te comento como podriamos hacerlo, que basicamente son dos opciones.
Compilar PHP con el modulo pdo_pgsql incluido
- PRO: Es a la vieja usanza… no falla!
- CONTRA: Es un embole cada vez que queremos agregar un modulo nuevo!.
Como lo hacemos? (Voy a poner algunos pasos extras o que se pueden comprimir en un solo paso, que seguro vos ya tenes, para que le sirva a otros en el futuro)
1- Instalamos las herramientas de compilación.
# apt-get install build-essential
2- Instalamos las librerias de PostgreSQL necesarias para la compilación del modulo pdo_pgsql de PHP (se utilizan headers de los fuentes de PostgreSQL)
# apt-get install libpq-dev
3- Bajamos el código fuente, lo descomprimimos y entramos a la carpeta donde lo dejamos
# cd /usr/local/src
# wget http://ar.php.net/get/php-5.3.19.tar.gz/from/ar2.php.net/mirror -O php-5.3.19.tar.gz
# tar -xzf php-5.3.19.tar.gz
# cd php-5.3.19
4- Procedemos con la compilación, primer paso configurar la instalación con el comando ./configure
./configure --with-pdo-pgsql --prefix=/usr/local/php-5.3.19
- El modificador –with-pdo-pgsql es el que le dice al compilador de que queremos agregar el modulo pdo_pgsql
- El modificador –prefix lo que dice es donde va a dejar el fuente ya compilado, aunque no es necesario, es una buena costumbre poner una ruta especifica, en este caso: /usr/local/php-5.3.19
Comentario: Se pueden ver mas modificador… ejecutando ./configure --help
5- Compilamos e instalamos.
# make
# make install
6- Configuración
Por default en la instalación de php, no viene el archivo de configuración php.ini y toma todas las configuraciones por default. Debemos copiarlo desde los fuentes.
# cp /usr/local/src/php-5.3.19/php.ini-development /usr/local/php-5.3.19/lib/php.ini
NOTA: Cambiar las rutas según la versión que se este instalando.
Con esto, tenemos instalado un PHP con el modulo pdo_pgsql incluido.
Compilar PHP y agregar el modulo pdo_pgsql por pecl (osea como modulo)
- PRO: Es una manera mucho mas comoda de hacerlo…
- CONTRA: “Puede fallar” dijo un conocido mago …
Bueno, hasta el paso 3, es exactamente igual a lo que explique anteriormente… lo que cambia es el punto 4.
4- Procedemos con la compilación, primer paso configurar la instalación con el comando ./configure
./configure --prefix=/usr/local/php-5.3.19
Insisto con usar el modificador --prefix
Los pasos 5 y 6 son tambien exactamente iguales, pero aqui se agregan 2 pasos mas.
7- Instalar modulo via pecl.
# pecl install pdo_pgsql
8- Configurar el modulo/extension en el php.ini
# nano /usr/local/php-5.3.19/lib/php.ini
NOTA: Si, hay que editar el archivo que creamos en el paso 6.
Y agregar la siguiente linea al final del archivo:
extension=pdo_pgsql.so
Con esto debería estar listo, si ejecutamos el comando php -m deberíamos poder ver el modulo activado.
Bueno, se me hizo un poco largo no?.. yo lo probe y me funciono correctamente, espero que te sirva, por favor comentanos como te fue!
PD: Ojo, que si volves a compilar probablemente te queden dos versiones… desinstala primero la que habías compilado antes y la que instalaste por php.