martes, 26 de julio de 2011

Modulo dbase para PHP 5.3x

Hace unos días me encontré con el problema de que el módulo de acceso a bases dbase había perdido el soporte y la única opción era recompilar el PHP con --enable-dbase . Todas las opciones que se presentaron como alternativa en la web al parecer no funcionaban con versiones de PHP 5.3x, excepto la siguiente:

Antes que nada debemos asegurarnos que disponemos de los siguientes paquetes en nuestro linux:
  • subversion
  • autoconf: 2.13 (2.59+ para PHP 5.4+)
  • automake: 1.4+
  • libtool: 1.4.x+ (excepto 1.4.2)
  • bison: 1.28, 1.35, 1.75, 2.0 o superior
  • flex (PHP 5.2 y anteriores): 2.5.4 (no superior)
  • re2c: 0.13.4+
  • Si no tenemos alguno de ellos:
apt-get install subversion autoconf automake libtool bison flex re2c


Los pasos restantes son los siguientes:

mkdir /opt/php

cd /opt/php

apt-get source php5

cd /opt/php/php5-5.3.2/ext/

mkdir dbase

svn co http://svn.php.net/repository/pecl/dbase/trunk dbase

cd /opt/php/php5-5.3.2/ext/dbase

phpize

./configure

make

cp /opt/php/php5-5.3.2/ext/dbase/modules/dbase.so /usr/lib/php5/20090626+lfs/.


/etc/init.d/apache2 restart

Con php -m desde la línea de comando podemos verificar si ahora el módulo dbase se encuentra habilitado.


3 comentarios:

Banner dijo...

excelente articulo, funciono muy bien, solamente falto indicar que es necesario tener instalado el paquete developer de php: php-dev para compilar las extensiones... saludos!

Martin Cisneros Capistrán dijo...

En realidad falto mencionar:

sudo apt-get install dpkg-dev
sudo apt-get install php5-dev

Editar el php.ini, si no sabes donde esta:

find / -name php.ini

En php.ini agregar:

extension=dbase.so

reiniciar apache

saludos!!

Martin Cisneros Capistrán dijo...

Por cierto este post me salvó horas de andar buscando!! muchas gracias! saludos desde San Luis Potoí, México