Compilando PHP 5 con soporte para Oracle en (k)ubuntu

Esta es una explicacion de como compilar php 5, en ubuntu 6.06, para poder conectarnos a la base de datos Oracle

Supongo que tenemos instalado el apache2 sino es asi en una consola ejecutamos

$ sudo apt-get install apache2

Agregamos a nuestra lista de repositorios el repositorio de oracle, editamos el archivo /etc/apt/sources.list y agregamos la siguiente linea

deb http://oss.oracle.com/debian unstable main non-free

a continuacion instalamos el cliente de oracle XE.

$ sudo apt-get install oracle-xe-client
Seteamos la variable $ORACLE_HOME

$ export ORACLE_HOME=/usr/lib/oracle/xe/app/oracle/product/10.2.0/client/

Nos posicionamos en el directorio /usr/src

$ cd /usr/src

Obtenemos el codigo fuente de PHP 5

$ sudo apt-get source php5

Instalamos el parser Flex

$ sudo apt-get install flex

y el paquete de desarrollo de apache2 que nos hacen falta en el proceso de compilacion.

$ sudo apt-get install apache2-dev

nos posicionamos dentro del directorio donde se encuentra el codigo fuente del php 5 que bajamos (actualmente la version 5.1.2).

$ cd /usr/src/php5-5.1.2/

Devido que al intentar compilar con gcc 4 tube problemas optamos por installar gcc 3.4

$ apt-get install gcc-3.4

reemplazamos el link simbolico de /usr/bin/gcc

$ sudo rm /usr/bin/gcc

Creamos un nuevo enlace simbolico a la version de gcc que necesitamos.

$ sudo ln -s /usr/bin/gcc-3.4 /usr/bin/gcc

Llego el momento de ejecutar el script de configuracion.

$sudo ./configure --with-oci8=$ORACLE_HOME --with-apxs2=/usr/bin/apxs2

lugo compilamos e instalamos.
make & make install

Lo siguiente que tenemos que hacer es configurar el apache para que procese los php.

editamos el archivo /etc/apache2/apache2.conf y descomentamos las siguientes lineas(borrando el # del comienzo)

#AddType application/x-httpd-php .php
#AddType application/x-httpd-php-source .phps

Luego solo queda reiniciar el apache

$ sudo /etc/init.d/apache2 restart

Con esto tenemos nuestro php compilado para conectarse con una base de datos oracle.

arkatPDA
arkatPDA