Solucionar problemas con SQLite y PHP 5.3.6 en Ubuntu

Normalmente solucionar problemas de sistemas operativos (cualquiera) es relativamente sencillo teniendo a mano Google. Siempre hay alguien que ha tenido el mismo problema y foros y otras herramientas donde se deja información sobre cómo solucionarlo.

Escribo esta entrada porque con este último problema (y hacía mucho que no me pasaba), he estado un par de días dándo vueltas hasta encontrar la solución, no ha sido sencillo.

El problema sucedió en mi máquina, un HP Probook 6360b, con Ubuntu 11.10 y PHP 5.3.6. Tenía instalada la librería php5-sqlite, pero tenía dos problemas en mi entorno de desarrollo:

– Utilizando la consola, obtenía este error:

PHP Startup: Unable to load dynamic library '/usr/lib/php5/20090626+lfs/sqlite.so'

– En cualquier aplicación web que usase funciones o métodos de SQLite, obtenía errores:

PHP Fatal error:  Class 'SQLiteDatabase' not found

o de la función:

PHP Fatal error:  Call to undefined function sqlite_open()

Parece que PHP 5.3 ya trae las funciones de SQLite incorporadas por defecto, pero parece no ser así. Además, en el directorio /usr/lib/php5/20090626+lfs/ no aparecía la librería sqlite.so, que teóricamente tendría que aparecer.

La solución:

1) Bajarse directamente el .deb, me funcionó bajándome la versión de la 11.04.

http://packages.ubuntu.com/natty-updates/php5-sqlite

2) Descomprimir o abrir el .deb con algún editor de archivos (el Archive Manager debería servir)

3) Copiar sqlite.so a /usr/lib/php5/20090626+lfs/

4) Reiniciar Apache

No sé si será un problema específico de mi instalación, es probable. En cualquier caso, lo dejo por si a algún otro desafortunado le ocurre.

Also read...