Qt MySQL driver Problem
-
Hallo liebe Community,
Ich bin total am verzweifeln. Ich habe ein Programm geschrieben welches die von Qt gestellten MySQL Schnittstellen verwendet. Dort bekomme ich den Error "MySQL Driver not loaded". Das Problem habe ich dann gegooglet und herausgefunden das ich die MySQL driver erst noch erstellen muss. Dazu Habe ich mir die Qt Sources heruntergelden und die MySQL Server Dateien und den MySQL C++ Connector. Ich habe also die MySQL Projekt Datei aus den Qt Sources geöffnet und dort die MySQL Server libraries und Includepfade hinzugefügt.
Hier mal der Code der .pro Datei:TARGET = qsqlmysql SOURCES = main.cpp OTHER_FILES += mysql.json include(../../../sql/drivers/mysql/qsql_mysql.pri) INCLUDEPATH += C:/MySQL/MySQLServer55/include QMAKE_LIBDIR += C:/MySQL/MySQLServer55/lib LIBS += -lmysql PLUGIN_CLASS_NAME = QMYSQLDriverPlugin include(../qsqldriverbase.pri)
Wenn ich nun Versuche das Projekt zu erstellen bekomme ich den Fehler "cannot open file 'mysql.lib'". Dann habe ich im MySQL Server Verzeichnis geschaut und bemerkt das dort keine solche Datei vorliegt sondern nur eine libmysql.lib. Daraufhin habe ich LIBS += -lmysql zu LIBS += -llibmysql geändert und bekomme nun über 100 "unresolved external symbol" errors vom Linker.
Ich hoffe ihr könnt mir helfen ich bin echt komplett am verzweifeln, ich probier es schon seit über 2 tagen :c
MfG
Steven
-
alant1337 schrieb:
Ich habe also die MySQL Projekt Datei aus den Qt Sources geöffnet und dort die MySQL Server libraries und Includepfade hinzugefügt.
Warum machst du das? Hört sich etwas abwegig an. Quelle?
-
Ich mache das um den MySQL Driver zu erstellen.
Quelle1: http://doc.qt.io/qt-4.8/sql-driver.html(Qt Seite)
Quelle2: https://www.youtube.com/watch?v=r1TbNjJSlX8(Youtube)Danke für den Hilfsversuch
-
Hmm, muss man anscheinend tatsächlich so machen. Kann ich dir spontan nicht weiterhelfen, hab den MySql Treiber noch nie gebraucht.
-
Schade, trotzdem danke für den Versuch
-
Bzw., das steht in meiner mysql.pri:
!contains(LIBS, .*mysql.*):!contains(LIBS, .*mysqld.*):LIBS += -llibmysql
Also, libmysql ist schon mal nicht verkehrt. Was für Linkerfehler kriegst du z.B.?
-
Ich bekomme ca. 100 "LNK2019: unresolved external symbol 'irgendeine virtuelle Methode einer MySQL Klasse'". Was ja eig. darauf zurückzuführen ist, dass mir eine library fehlt oder nicht?
-
Ja, z.B.?
-
Beispiel für was?
-
für 'irgendeine virtuelle Methode einer MySQL Klasse'
Poste mal paar genaue Fehlermeldungen, welche virtuelle Funktionen und welche Klassen.
-
Dieser Thread wurde von Moderator/in rapso aus dem Forum Spiele-/Grafikprogrammierung in das Forum Andere GUIs - Qt, GTK+, wxWidgets verschoben.
Im Zweifelsfall bitte auch folgende Hinweise beachten:
C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?Dieses Posting wurde automatisch erzeugt.
-
Habe es gelöst, das tutorial war veraltet und ich hatte eine falsche Bit Version. Richtige Beit Version geholt und nun funktioniert es. Noch einen Tipp falls jemand das selbe Problem hatte, die Driver werden in den Pfaden von den Compilern erstellt! Um das heraus zu finden musste ich leider erstmal eine halbe Stunde suchen^^
Naja danke für die nette Hilfe