QT4: Linker-Fehler mit QSqlDatabase
-
Hallo zusammen,
ich habe die Open-Source-VBersion von QT 4.0.0 für Windows mit MinGW installiert und bisher hat das ganze auch wunderbar funktioniert.
Jetzt möchte ich in meinem Programm eine SQLite-Datenbank einbauen. Dazu benutze ich QSqlDatabase:
//sorganizer.cpp: #include "ui_sorganizer.h" #include "sorganizer.h" #include <QAction> #include <QMenuBar> #include <QMenu> #include <QStatusBar> #include <QtSql/QSqlDatabase> sorganizer::sorganizer(QMainWindow *parent): QMainWindow(parent) { . . . QSqlDatabase::isDriverAvailable("SQLITE"); //Test-Befehl }
Dabei erhalte ich von make folgende Ausgabe:
... release\sorganizer.o(.text+0xb76):sorganizer.cpp: undefined reference to `_imp___ZN12QSqlDatabase17isDriverAvailableERK7QString' release\sorganizer.o(.text+0xf16):sorganizer.cpp: undefined reference to `_imp___ZN12QSqlDatabase17isDriverAvailableERK7QString' collect2: ld returned 1 exit status mingw32-make[1]: *** [release\sorganizer.exe] Error 1 mingw32-make[1]: Leaving directory `C:/Dokumente und Einstellungen/Admin/Desktop/sorganizer.QT' mingw32-make: *** [release] Error 2
Für jede andere QSqlDatabase-Methode erhalte ich ähnliche Fehlermeldungen. Wird die Zeile auskommentiert, kompiliert und linkt er fehlerfrei.
Muss ich evtl. meine Projekt-Datei un eine Bibliothek erweitern? Ich habe sie bisher immer von qmake -project automatisch erstellen lassen.
Vielen Dank im Voraus!
Edit:
Wenn es hilft, ist hier noch meine .pro-Datei:
###################################################################### # Automatically generated by qmake (2.00a) Di 9. Aug 19:30:22 2005 ###################################################################### TEMPLATE = app DEPENDPATH += . INCLUDEPATH += . # Input HEADERS += sorganizer.h ui_sorganizer.h FORMS += sorganizer.ui SOURCES += main.cpp sorganizer.cpp
-
Such mal in http://doc.trolltech.com/4.0/qmake-project-files.html nach "sql". Ich denke mal, dass die Qt 4 Version unter Windows auch die SQL Module kompiliert, weiss es aber nur für Linux sicher.
-
Danke, ich musste QT += sql noch hinzufügen.