[SOLVED] Problem: Datenbanktreiber einrichten - Linux
[SOLVED] Problem: Datenbanktreiber einrichten - Linux
Hallo,
ich versuche jetzt schon seit Tagen den MySQL-Treiber auf linux einzurichten.
Das Problem ist aber das im Ordner "/usr/local/Trolltech/Qt-4.8.0/plugins/sqldrivers" es keinen "mysql"-Ordner befindet. Beudetet also, dass ich auch keine mysql.pro habe.
Im Ordner "sqldrivers" habe ich nur 3 Dateien:
libqsqlite.so libqsqlmysql.so libqsqlpsql.so
Habe ich einen Fehler bei der Installation gemacht?
Danke schonmal für die Hilfe!
Gruß
t4ggno
ich versuche jetzt schon seit Tagen den MySQL-Treiber auf linux einzurichten.
Das Problem ist aber das im Ordner "/usr/local/Trolltech/Qt-4.8.0/plugins/sqldrivers" es keinen "mysql"-Ordner befindet. Beudetet also, dass ich auch keine mysql.pro habe.
Im Ordner "sqldrivers" habe ich nur 3 Dateien:
libqsqlite.so libqsqlmysql.so libqsqlpsql.so
Habe ich einen Fehler bei der Installation gemacht?
Danke schonmal für die Hilfe!
Gruß
t4ggno
Zuletzt geändert von t4ggno am 7. Januar 2012 20:48, insgesamt 1-mal geändert.
-
Christian81
- Beiträge: 7319
- Registriert: 26. August 2004 14:11
- Wohnort: Bremen
- Kontaktdaten:
Re: Problem: Datenbanktreiber einrichten - Linux
libqsqlmysql.so ist doch der MySQL-Treiber... was sagt QSqlDataBase::drivers?
Des weiteren - warum selbst kompilieren? Die Linux-Distributionen bringen das Ganze schon korrekt konfiguriert mit ...
Des weiteren - warum selbst kompilieren? Die Linux-Distributionen bringen das Ganze schon korrekt konfiguriert mit ...
MfG Christian
'Funktioniert nicht' ist keine Fehlerbeschreibung
'Funktioniert nicht' ist keine Fehlerbeschreibung
Re: Problem: Datenbanktreiber einrichten - Linux
Folgende Fehlermeldung erscheint wenn mein Programm eine Verbindung zur Datenbank herstellen möchte:
Das mit dem compilieren habe ich hier gesehen:
http://doc.qt.nokia.com/4.7-snapshot/sq ... ingw-users
Code: Alles auswählen
QSqlDatabase: QMYSQL driver not loaded
QSqlDatabase: available drivers: QSQLITE QPSQL7 QPSQL
http://doc.qt.nokia.com/4.7-snapshot/sq ... ingw-users
-
Christian81
- Beiträge: 7319
- Registriert: 26. August 2004 14:11
- Wohnort: Bremen
- Kontaktdaten:
Re: Problem: Datenbanktreiber einrichten - Linux
Nimm das Qt und das Qt-Mysql - Plugin von Deiner Distribution - da geht es auf alle Fälle ...
Der Link zeigt auf das Vorgehen zum Kompilieren des Plugins unter Windows mit MinGW - was Du damit anfangen willst weiß ich nicht.
Der Link zeigt auf das Vorgehen zum Kompilieren des Plugins unter Windows mit MinGW - was Du damit anfangen willst weiß ich nicht.
MfG Christian
'Funktioniert nicht' ist keine Fehlerbeschreibung
'Funktioniert nicht' ist keine Fehlerbeschreibung
Re: Problem: Datenbanktreiber einrichten - Linux
Siehe hier (gleiches Verfahren):
http://www.isd-web.com/index.php?option ... &Itemid=13
Dort wird der Treiber mithilfe der mysql.pro File erzeugt und in den plugin-Ordner verschoben.
Das MySQL-Plugin was sich ja derzeit im sqldrivers-ordner befindet funktioniert ja nicht, da es ja sonst in der Liste der verfügbaren Treiber aufgelistet sein sollte.
Oder steh ich grad auf der Leitung?
Gruß
t4ggno
http://www.isd-web.com/index.php?option ... &Itemid=13
Dort wird der Treiber mithilfe der mysql.pro File erzeugt und in den plugin-Ordner verschoben.
Das MySQL-Plugin was sich ja derzeit im sqldrivers-ordner befindet funktioniert ja nicht, da es ja sonst in der Liste der verfügbaren Treiber aufgelistet sein sollte.
Oder steh ich grad auf der Leitung?
Gruß
t4ggno
-
Christian81
- Beiträge: 7319
- Registriert: 26. August 2004 14:11
- Wohnort: Bremen
- Kontaktdaten:
Re: Problem: Datenbanktreiber einrichten - Linux
Nochmal: Nimm die Qt-Version von deiner Distribution und dort den MySQL-Treiber - dann geht es auf alle Fälle... warum man Qt unter Linux selbst kompilieren muss wenn man nicht gerade einen gravierenden Bug in der mitgelieferte Version findet verstehe ich nicht - zumal wenn man wenig Ahnung hat.
Und wenn Du es von Hand machen willst - so wie es aussieht hast Du den MySQL-Treiber korrekt kompiliert. Wenn er nicht geladen werden kann dann liegt es daran dass Du entweder nicht diese Qt-Version benutzt (ldd ist dein Freund) oder dass das Plugin nicht alle Library-Dependencies findet (auch hier: ldd ist dein Freund -> ldd libmysqlplugin.so)
Und wenn Du es von Hand machen willst - so wie es aussieht hast Du den MySQL-Treiber korrekt kompiliert. Wenn er nicht geladen werden kann dann liegt es daran dass Du entweder nicht diese Qt-Version benutzt (ldd ist dein Freund) oder dass das Plugin nicht alle Library-Dependencies findet (auch hier: ldd ist dein Freund -> ldd libmysqlplugin.so)
MfG Christian
'Funktioniert nicht' ist keine Fehlerbeschreibung
'Funktioniert nicht' ist keine Fehlerbeschreibung
Re: Problem: Datenbanktreiber einrichten - Linux
Entschuldige meine Unwissenheit.
Aus Fehlern lernt man! Habe noch nie was großes mit Linux gemacht.
Habe nun mal ldd beim MySQL-Treiber gemacht. Ergebnis:
Sieht das so in Ordnung aus, oder fehlt mir eine Datei?
Aus Fehlern lernt man! Habe noch nie was großes mit Linux gemacht.
Habe nun mal ldd beim MySQL-Treiber gemacht. Ergebnis:
Code: Alles auswählen
/usr/local/Trolltech/Qt-4.8.0/plugins/sqldrivers# ldd libqsqlmysql.so
linux-vdso.so.1 => (0x00007fffa01ff000)
libmysqlclient_r.so.16 => /usr/lib/libmysqlclient_r.so.16 (0x00007f3c9d234000)
libQtSql.so.4 => /usr/lib/libQtSql.so.4 (0x00007f3c9cff1000)
libQtCore.so.4 => /usr/lib/libQtCore.so.4 (0x00007f3c9cb5f000)
libstdc++.so.6 => /usr/lib/libstdc++.so.6 (0x00007f3c9c84b000)
libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x00007f3c9c635000)
libc.so.6 => /lib/libc.so.6 (0x00007f3c9c2d3000)
libpthread.so.0 => /lib/libpthread.so.0 (0x00007f3c9c0b7000)
libcrypt.so.1 => /lib/libcrypt.so.1 (0x00007f3c9be80000)
libnsl.so.1 => /lib/libnsl.so.1 (0x00007f3c9bc67000)
libm.so.6 => /lib/libm.so.6 (0x00007f3c9b9e5000)
libz.so.1 => /usr/lib/libz.so.1 (0x00007f3c9b7ce000)
libdl.so.2 => /lib/libdl.so.2 (0x00007f3c9b5c9000)
libgthread-2.0.so.0 => /usr/lib/libgthread-2.0.so.0 (0x00007f3c9b3c5000)
librt.so.1 => /lib/librt.so.1 (0x00007f3c9b1bd000)
libglib-2.0.so.0 => /lib/libglib-2.0.so.0 (0x00007f3c9aee0000)
/lib64/ld-linux-x86-64.so.2 (0x00007f3c9d879000)
libpcre.so.3 => /lib/libpcre.so.3 (0x00007f3c9acb0000)
-
Christian81
- Beiträge: 7319
- Registriert: 26. August 2004 14:11
- Wohnort: Bremen
- Kontaktdaten:
Re: Problem: Datenbanktreiber einrichten - Linux
Und hast du endlich auch geschaut ob Du wirklich das von Dir kompilierte Qt benutzt und nicht das von der Distribution? Und warum überhaupt ein eigenes Qt??
MfG Christian
'Funktioniert nicht' ist keine Fehlerbeschreibung
'Funktioniert nicht' ist keine Fehlerbeschreibung
Re: Problem: Datenbanktreiber einrichten - Linux
Also. Ich weiß zwar nicht genau, was du mit deiner Frage gemeint hast, aber die Funktion
liefert folgendes Ergebnis:
Er greift also auf das richtige QT-Verzeichnis zu. In diesem Plugin-Ordner befindet sich ja der sqldriver-ordner mit dem darin enthaltenden MySQL-Treiber?!
Gruß
t4ggno
Code: Alles auswählen
app.libraryPaths();Code: Alles auswählen
("/usr/local/Trolltech/Qt-4.8.0/plugins", "/home/Tools/SQL_Driver")Gruß
t4ggno
Re: Problem: Datenbanktreiber einrichten - Linux
*PUSH*
Das Problem besteht weiterhin!
kann mir denn keiner weiterhelfen?
Gruß
t4ggno
Das Problem besteht weiterhin!
kann mir denn keiner weiterhelfen?
Gruß
t4ggno
-
Christian81
- Beiträge: 7319
- Registriert: 26. August 2004 14:11
- Wohnort: Bremen
- Kontaktdaten:
Re: Problem: Datenbanktreiber einrichten - Linux
Du hast immer noch nicht gesagt warum Du das Qt welches von deiner Distribution mitgeliefert wird nicht benutzen möchtest - denn dort geht es auf alle Fälle.
MfG Christian
'Funktioniert nicht' ist keine Fehlerbeschreibung
'Funktioniert nicht' ist keine Fehlerbeschreibung
Re: Problem: Datenbanktreiber einrichten - Linux
Wenn es kein Unterschied gibt, dann verwende ich halt das QT von der OS.
Aber wie genau kann ich meinem Server nun "beibringen"?
Wird dann mysql auch funktionieren?
Aber wie genau kann ich meinem Server nun "beibringen"?
Wird dann mysql auch funktionieren?
-
Christian81
- Beiträge: 7319
- Registriert: 26. August 2004 14:11
- Wohnort: Bremen
- Kontaktdaten:
Re: Problem: Datenbanktreiber einrichten - Linux
Was meinst Du damit? Wenn das Paket für das Qt-MySQL Plugin installiert ist (wasd meistens per default schon passiert) dann benutze es und fertig.
MfG Christian
'Funktioniert nicht' ist keine Fehlerbeschreibung
'Funktioniert nicht' ist keine Fehlerbeschreibung
Re: Problem: Datenbanktreiber einrichten - Linux
Aber wie? Ich hab grad echt keine Ahnung..
Will doch nur diese dumme MySQL-Verbindung hinbekommen. Ist ja einfacher eine alternativlösung zu suchen :/
Hab doch nichts anders gemacht als andere?!
Will doch nur diese dumme MySQL-Verbindung hinbekommen. Ist ja einfacher eine alternativlösung zu suchen :/
Hab doch nichts anders gemacht als andere?!
Re: Problem: Datenbanktreiber einrichten - Linux
Habe das Problem glaub gelöst.
Ich habe einfach nur die libmysql.so-Datei in das "lib"-Verzeichnis von QT verschoben.
Nun findet er den Treiber.
Seltsam warum er nicht im plugin-Ordner gesucht hat.
Naja... hauptsache es funktioniert.
Gruß
t4ggno
Ich habe einfach nur die libmysql.so-Datei in das "lib"-Verzeichnis von QT verschoben.
Nun findet er den Treiber.
Seltsam warum er nicht im plugin-Ordner gesucht hat.
Naja... hauptsache es funktioniert.
Gruß
t4ggno