Im trying to build cpython, against a home built version of sqlite. I’ve spent all day, but can’t make it work. Please help me understand this first bit.
../configure \
LIBSQLITE3_CFLAGS=-I~/b/sqlite/build-3.40 \
LIBSQLITE3_LIBS=/home/velle/b/sqlite/build-3.40/.libs/libsqlite3.so
The command above does something right. For all other values I have tried, configure says sqlite is missing.
For the values above it looks like this, in config.status.
"MODULE__SQLITE3_STATE=yes\n"\
"MODULE__SQLITE3_CFLAGS=-I~/b/sqlite/build-3.40 -I$(srcdir)/Modules/_sqlite\n"\
"MODULE__SQLITE3_LDFLAGS=/home/velle/b/sqlite/build-3.40/.libs/libsqlite3.so\n"\
But notice the last one, it’s not called LIBS, its called LDFLAGS, and I would expect the value to be prefixed by -l. So I looked at the config.status for a standard build, an in that case yes, the path is prefixed by -l
, and looks like this.
"MODULE__SQLITE3_STATE=yes\n"\
"MODULE__SQLITE3_CFLAGS= -I$(srcdir)/Modules/_sqlite\n"\
"MODULE__SQLITE3_LDFLAGS=-lsqlite3\n"\
So should I use “-l” or not for LIBSQLITE3_LIBS?
If I run make
, there are no fatal errors, but at the very end it says.
The necessary bits to build these optional modules were not found:
_dbm _gdbm _tkinter
To find the necessary bits, look in configure.ac and config.log.
Is there a problem with configure? Or am I using it wrong? Any help is appreciated
Details:
cpython, source, branch 3.13
sqlite, source, branch 3.40.2
Ubuntu 22.04