php.net |  support |  documentation |  report a bug |  advanced search |  search howto |  statistics |  random bug |  login
Bug #47678 sqlite3 extension fails to load if sqlite is built without --enable-load-extens
Submitted: 2009-03-16 19:06 UTC Modified: 2009-03-17 02:45 UTC
From: glen at delfi dot ee Assigned: scottmac (profile)
Status: Closed Package: SQLite related
PHP Version: 5.3CVS-2009-03-16 (snap) OS: PLD Linux
Private report: No CVE-ID: None
 [2009-03-16 19:06 UTC] glen at delfi dot ee
Description:
------------
$ php -m >/dev/null
PHP Warning:  PHP Startup: Unable to load dynamic 
library '/usr/lib/php/sqlite3.so' - /usr/lib/php/sqlite3.so: 
undefined symbol: sqlite3_load_extension in Unknown on line 0


Expected result:
----------------
should the whole method be disabled if system sqlite doesn't support 
it, or rather php method return false (failure?):

public bool SQLite3::loadExtension( string $shared_library)


Patches

Pull Requests

History

AllCommentsChangesGit/SVN commitsRelated reports
 [2009-03-16 19:08 UTC] glen at delfi dot ee
here's my patch to handle the situation:

http://cvs.pld-linux.org/cgi-bin/cvsweb.cgi/SOURCES/php-sqlite3-loadext.patch

http://php.net/manual/en/sqlite3.loadextension.php
 [2009-03-16 19:22 UTC] scottmac@php.net
I assume you're doing this against an external library?

I'll need to look at a few other things that can be possibly omitted from the standard build.
 [2009-03-16 19:38 UTC] glen at delfi dot ee
yep, against system library (external as you said)

ps: there was small typo in patch, recheck the patch if you already 
downloaded it.
 [2009-03-17 02:45 UTC] scottmac@php.net
This bug has been fixed in CVS.

Snapshots of the sources are packaged every three hours; this change
will be in the next snapshot. You can grab the snapshot at
http://snaps.php.net/.
 
Thank you for the report, and for helping us make PHP better.

Patch is different from yours, when a feature isn't available the standard practice in PHP is to remove it from that build rather than have it error.

Also by using the same define as the bundled library we can allow it to be disabled there too.
 
PHP Copyright © 2001-2024 The PHP Group
All rights reserved.
Last updated: Thu Dec 26 15:01:32 2024 UTC