[pysqlite] Getting Error: undefined symbol: sqlite3_enable_shared_cache

Christian Boos cboos at neuf.fr
Wed Mar 7 09:56:57 CET 2007


Jeremy Gillick wrote:
> I've been banging my head against this and cannot find any information 
> online to help.
>
> I have installed SQLite 3.3.13 and PySQLite 2.3.3 without any errors.  
> My server is running on Fedora Linux with
> ...
>    ImportError:
>    /usr/local/lib/python2.5/site-packages/pysqlite2/_sqlite.so:
>    *undefined symbol: sqlite3_enable_shared_cache
>    *

Hello Jeremy,

This is an installation issue: you've installed SQLite 3.3.13 which 
contains the sqlite3_enable_shared_cache symbol, but at run-time, 
/usr/local/lib/python2.5/site-packages/pysqlite2/_sqlite.so gets linked 
to a different SQLite library (older than 3.3.0).
You need to make sure that the SQLite 3.3.13 library gets picked /first/ 
by adjusting your LD_LIBRARY_PATH variable.

e.g.

$ export LD_LIBRARY_PATH=/opt/sqlite-3.3.13/lib:$LD_LIBRARY_PATH
$ python
Python 2.etc.
Type "help", "copyright", "credits" or "license" for more information.
 >>> from pysqlite2 import dbapi2 as sqlite
 >>> sqlite.version
'2.3.3'
 >>> sqlite.sqlite_version
'3.3.13

You should be able to run trac in this environment as well ;-)

-- Christian'





More information about the pysqlite mailing list