I have the annoying SQLite header and source version mismatch
problem when trying to run SQLite3 on Ubuntu 13.04. I've done in various orders (and all multiple times):
apt-get remove sqlite3 libsqlite3-dev
, and reinstallationldconfig
- Compiled sqlite from source using the
autoconf
tar.gz - Tried everything I've found on Google...
Yet I can't figure out what's wrong. I've wasted 3 hours of my life on this!
And in fact, why does the following happen:
$ sqlite3
SQLite header and source version mismatch
2010-03-09 19:31:43 4ae453ea7be69018d8c16eb8dabe05617397dc4d
2013-05-20 00:56:22 118a3b35693b134d56ebd780123b7fd6f1497668
$ apt-get remove sqlite3
Reading package lists... Done
Building dependency tree
Reading state information... Done
Package 'sqlite3' is not installed, so not removed
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
If sqlite3
isn't installed, how can it think there's a mismatch?!
Update
Right, thanks to Aaron, I've now got as far as
$ locate libsqlite3.so
/usr/local/lib/libsqlite3.so
/usr/local/lib/libsqlite3.so.0
/usr/local/lib/libsqlite3.so.0.8.6
I've moved them to a temp dir, and now get
$ sqlite3
The program 'sqlite3' is currently not installed. You can install it by typing:
sudo apt-get install sqlite3
I did
$ apt-get install sqlite3
$ apt-get install libsqlite3-dev
And STILL get the same mismatch error
And I've removed the spurious sqlite3.h
and sqlite3ext.h
files that were still around, repeated everything, and still get the issues...
sqlite3
wasn't installed, invoking it on the command line would fail. Presumably there's a copy still installed somewhere, perhaps left over from your manual installation attempt; remove that, confirm thatupdatedb; locate libsqlite3.so
doesn't find anything except in your build directories, then reinstall viaapt-get
.libsqlite3.h
hanging around somewhere, and likewise move them to a temporary directory. (It may be thatapt
won't overwrite those files when installinglibsqlite3-dev
.)