Qt4 mit Sqlite 3.3.8
Verfasst: 24. Oktober 2006 18:37
Bei den kurzen Abständen in denen Trolltech neue QT Versionen raus bringt, hab ich mir gedacht vielleicht ist es für den einen oder anderen hilfreich, wenn ich die Anpassungen die für eine Integration von SQLite 3.3.8 nötig sind hier veröffentliche:
Zunächst den Sourcecode von SQLite 3.3.8 hier runterladen und in das Verzeichnis src\3rdparty\sqlite im QT Installationspfad entpacken und die dort vorhandenen Dateien überschreiben.
Anschließend in der Datei "drivers.pri" im Verzeichnis "src\sql\drivers" des QT Installationspfades den Abschnitt contains(sql-drivers, sqlite) ersetzen mit folgendem Code:
Genauso in der Datei "sqlite.pro" im Verzeichnis plugins\sqldrivers\sqlite des QT Installationspfades den Abschnitt !system-sqlite:!contains( LIBS, .*sqlite.* )
durch folgendes ersetzen:
Zunächst den Sourcecode von SQLite 3.3.8 hier runterladen und in das Verzeichnis src\3rdparty\sqlite im QT Installationspfad entpacken und die dort vorhandenen Dateien überschreiben.
Anschließend in der Datei "drivers.pri" im Verzeichnis "src\sql\drivers" des QT Installationspfades den Abschnitt contains(sql-drivers, sqlite) ersetzen mit folgendem Code:
Code: Alles auswählen
contains(sql-drivers, sqlite) {
!system-sqlite:!contains( LIBS, .*sqlite3.* ) {
CONFIG(release, debug|release):DEFINES *= NDEBUG
INCLUDEPATH += ../3rdparty/sqlite
DEFINE += NO_TCL
SOURCES += ../3rdparty/sqlite/alter.c \
../3rdparty/sqlite/analyze.c \
../3rdparty/sqlite/attach.c \
../3rdparty/sqlite/auth.c \
../3rdparty/sqlite/btree.c \
../3rdparty/sqlite/build.c \
../3rdparty/sqlite/callback.c \
../3rdparty/sqlite/complete.c \
../3rdparty/sqlite/date.c \
../3rdparty/sqlite/delete.c \
../3rdparty/sqlite/expr.c \
../3rdparty/sqlite/fts1.c \
../3rdparty/sqlite/fts1_hash.c \
../3rdparty/sqlite/fts1_porter.c \
../3rdparty/sqlite/fts1_tokenizer1.c \
../3rdparty/sqlite/func.c \
../3rdparty/sqlite/hash.c \
../3rdparty/sqlite/insert.c \
../3rdparty/sqlite/legacy.c \
../3rdparty/sqlite/loadext.c \
../3rdparty/sqlite/main.c \
../3rdparty/sqlite/opcodes.c \
../3rdparty/sqlite/os.c \
../3rdparty/sqlite/pager.c \
../3rdparty/sqlite/parse.c \
../3rdparty/sqlite/pragma.c \
../3rdparty/sqlite/prepare.c \
../3rdparty/sqlite/printf.c \
../3rdparty/sqlite/random.c \
../3rdparty/sqlite/select.c \
../3rdparty/sqlite/table.c \
../3rdparty/sqlite/tokenize.c \
../3rdparty/sqlite/trigger.c \
../3rdparty/sqlite/update.c \
../3rdparty/sqlite/utf.c \
../3rdparty/sqlite/util.c \
../3rdparty/sqlite/vacuum.c \
../3rdparty/sqlite/vdbeapi.c \
../3rdparty/sqlite/vdbeaux.c \
../3rdparty/sqlite/vdbe.c \
../3rdparty/sqlite/vdbefifo.c \
../3rdparty/sqlite/vdbemem.c \
../3rdparty/sqlite/where.c \
../3rdparty/sqlite/vtab.c
unix:SOURCES += ../3rdparty/sqlite/os_unix.c
win32:SOURCES += ../3rdparty/sqlite/os_win.c
} else {
LIBS *= $$QT_LFLAGS_SQLITE
QMAKE_CXXFLAGS *= $$QT_CFLAGS_SQLITE
}
HEADERS += drivers/sqlite/qsql_sqlite.h
SOURCES += drivers/sqlite/qsql_sqlite.cpp
}
durch folgendes ersetzen:
Code: Alles auswählen
!system-sqlite:!contains( LIBS, .*sqlite.* ) {
CONFIG(release, debug|release):DEFINES *= NDEBUG
INCLUDEPATH += ../../../3rdparty/sqlite
DEFINE += NO_TCL
SOURCES += ../../../3rdparty/sqlite/alter.c \
../../../3rdparty/sqlite/analyze.c \
../../../3rdparty/sqlite/attach.c \
../../../3rdparty/sqlite/auth.c \
../../../3rdparty/sqlite/btree.c \
../../../3rdparty/sqlite/build.c \
../../../3rdparty/sqlite/callback.c \
../../../3rdparty/sqlite/complete.c \
../../../3rdparty/sqlite/date.c \
../../../3rdparty/sqlite/delete.c \
../../../3rdparty/sqlite/expr.c \
../../../3rdparty/sqlite/fts1.c \
../../../3rdparty/sqlite/fts1_hash.c \
../../../3rdparty/sqlite/fts1_porter.c \
../../../3rdparty/sqlite/fts1_tokenizer1.c \
../../../3rdparty/sqlite/func.c \
../../../3rdparty/sqlite/hash.c \
../../../3rdparty/sqlite/insert.c \
../../../3rdparty/sqlite/legacy.c \
../../../3rdparty/sqlite/loadext.c \
../../../3rdparty/sqlite/main.c \
../../../3rdparty/sqlite/opcodes.c \
../../../3rdparty/sqlite/os.c \
../../../3rdparty/sqlite/pager.c \
../../../3rdparty/sqlite/parse.c \
../../../3rdparty/sqlite/pragma.c \
../../../3rdparty/sqlite/prepare.c \
../../../3rdparty/sqlite/printf.c \
../../../3rdparty/sqlite/random.c \
../../../3rdparty/sqlite/select.c \
../../../3rdparty/sqlite/table.c \
../../../3rdparty/sqlite/tokenize.c \
../../../3rdparty/sqlite/trigger.c \
../../../3rdparty/sqlite/update.c \
../../../3rdparty/sqlite/utf.c \
../../../3rdparty/sqlite/util.c \
../../../3rdparty/sqlite/vacuum.c \
../../../3rdparty/sqlite/vdbeapi.c \
../../../3rdparty/sqlite/vdbeaux.c \
../../../3rdparty/sqlite/vdbe.c \
../../../3rdparty/sqlite/vdbefifo.c \
../../../3rdparty/sqlite/vdbemem.c \
../../../3rdparty/sqlite/where.c
../../../3rdparty/sqlite/vtab.c
unix:SOURCES += ../../../3rdparty/sqlite/os_unix.c
win32:SOURCES += ../../../3rdparty/sqlite/os_win.c
} else {
LIBS *= $$QT_LFLAGS_SQLITE
QMAKE_CXXFLAGS *= $$QT_CFLAGS_SQLITE
}