Здравствуйте!
Продолжаю мучать Ubuntu 9.04 Server. Нужно мне установить PHP5 с поддержкой SQLite3. Чтобы эта поддержка была и обычная, и через PDO.
Я устанавливаю пакеты:
php5
php5-common
php5-sqlite
libsqlite3-0
sqlite3
При этом в выводе phpinfo(), касаемо sqlite есть такая информация:
additional .ini files parsed
/etc/php5/cgi/conf.d/pdo.ini,
/etc/php5/cgi/conf.d/pdo_sqlite.ini,
/etc/php5/cgi/conf.d/sqlite.ini
Секция PDO
PDO support enabled
PDO drivers sqlite, sqlite2
Секция pdo_sqlite
PDO Driver for SQLite 3.x enabled
PECL Module version 1.0.1 $Id: pdo_sqlite.c,v 1.10.2.6.2.3 2007/12/31 07:20:10 sebastian Exp $
SQLite Library 3.6.10
Секция SQLite
SQLite support enabled
PECL Module version 2.0-dev $Id: sqlite.c,v 1.166.2.13.2.10 2007/12/31 07:20:11 sebastian Exp $
SQLite Library 2.8.17
SQLite Encoding UTF-8
То есть, поддержка SQLite3 через PDO вроде как есть. А вот обычной поддержки почему-то не наблюдаю. При наличии обычной поддержки (по крайней мере в PHP 5.2.1), должна быть видна такая секция:
Секция SQLITE3
SQLite3 support enabled
sqlite3 library version 3.3.13
А ее нет. И вот понять не могу, что нужно сделать, чтобы «обычная» поддержка SQLite3 появилась? Пакета, который бы назывался по типу «php5-sqlite3» нет.
ЗЫЖ
Библиотеки, которые использует php5, размещаются в каталоге /usr/lib/php5/20060613+lfs. В системе Ubuntu Fiesty (7.04) в этом каталоге есть файл sqlite3.so. Если дать команду поиска пакета по файлу sqlite3.so, в Ubuntu 7.04 я вижу:
# dpkg -S 'sqlite3.so'
...
php5-sqlite3: /usr/lib/php5/20060613+lfs/sqlite3.so
Если же попытаться выяснить, в каком пакете лежит файл sqlite3.so в Ubuntu 9.04 Server, получим
# dpkg -S 'sqlite3.so'
python2.6: /usr/lib/python2.6/lib-dynload/_sqlite3.so
libsqlite3-0: /usr/lib/libsqlite3.so.0
libsqlite3-0: /usr/lib/libsqlite3.so.0.8.6
то есть, PHP-шной библиотеки sqlite3.so в Ubuntu 9.04 Server почему-то нет.
Кстати, попробовал поискать sqlite3.so на http://packages.ubuntu.com/. Выяснилось, что этот файл присутствует только в Ubuntu Hardy (8.04), а в последующих выпусках убунты его просто нет.
Почему так? Что делать? Собирать поддержку SQLite3 руками?