Seite 1 von 1

qt-win-free-3.3 und mysql-4.1.12-win32

Verfasst: 1. Juni 2005 17:28
von nora
Moin.

Juchhu, habe heute zum ersten Mal eine meiner Linux-QT-Anwendungen die MySQL benutzen, unter Windows funktionieren gesehen. :-)

War aber mordsmäßige Arbeit das Qt mit MySQL-Unterstützung zum Funktionieren zu bekommen.

Ich hatte i.W. folgende Probleme:
+ 1. Habe ich ewig benötigt (viele, viele Versuche) um zu glauben, daß es mit MinGW oder DevC++ (also gcc-Kompiler) nicht geht. :-( Die MySQL-Bibliotheken lassen sich nicht linken.
+ 2. Ich mußte in die 'qt_windows.h' ein '#include <winsock.h>' einfügen. Vorher ließ sich das 'plugins/src/sqldrivers/mysql/main.cpp' nicht kompilieren.

Aktuell habe ich jetzt "Visual C++ 2005 Express Beta 2" und das "qt-win-free-3.3-2005-05-30-src.tar.bz2", sowie das "mysql-4.1.12-win-src.zip" zum Bauen benutzt.

Liebe Grüße, Nora.

Verfasst: 1. Juni 2005 17:34
von nora
Hupps, hab' mich vertan, die Sourcen vom MySQL werden nicht benötigt!!!
Das, war ein Fehler beim "cut & paste".

Tatsächlich habe ich "mysql-noinstall-4.1.12-win32.zip" benutzt.

Liebe Grüße, Nora.

Re: qt-win-free-3.3 und mysql-4.1.12-win32

Verfasst: 1. Juni 2005 22:13
von Christian81
nora hat geschrieben: + 2. Ich mußte in die 'qt_windows.h' ein '#include <winsock.h>' einfügen. Vorher ließ sich das 'plugins/src/sqldrivers/mysql/main.cpp' nicht kompilieren.
Danke für den Hinweis - werde es einfügen (wobei es imho in mysql.h eingefügt werden sollte und nicht bei qt3/free).
Kannst Du eine (englische) Anleitung an kde-cygwin schicken? Dann können wir es mit in unsere Website aufnehmen.

Verfasst: 1. Juni 2005 23:15
von nora
werde es einfügen (wobei es imho in mysql.h eingefügt werden sollte und nicht bei qt3/free).
Hab's mir grad' nochmal angeschaut, m.E. müsste die Datei 'src/sql/drivers/mysql/qsql_mysql.h' korrigiert werden. Dann ist die Änderung auch nur beim Kompilieren des MySQL-Plugins wirksam.
Kannst Du eine (englische) Anleitung an kde-cygwin schicken?
Was genau sollte in meiner Anleitung drin stehen?

Liebe Grüße, Nora.

Verfasst: 2. Juni 2005 11:38
von Christian81
nora hat geschrieben:
werde es einfügen (wobei es imho in mysql.h eingefügt werden sollte und nicht bei qt3/free).
Hab's mir grad' nochmal angeschaut, m.E. müsste die Datei 'src/sql/drivers/mysql/qsql_mysql.h' korrigiert werden. Dann ist die Änderung auch nur beim Kompilieren des MySQL-Plugins wirksam.
nein, die Datei fass ich nicht an - sie ist von TT so vorgegeben und an diesen Dateien ändern wir (wenn möglich) nichts.

nora hat geschrieben:
Kannst Du eine (englische) Anleitung an kde-cygwin schicken?
Was genau sollte in meiner Anleitung drin stehen?

Liebe Grüße, Nora.
Nunja, was Du alles gebraucht hast, was für Probleme Du hattest (z.B. das mit MinGW), ob jetzt alles so geht wie Du denkst das es gehen soll oder ob noch Fehler bei uns drin sind, ...

Re: qt-win-free-3.3 und mysql-4.1.12-win32

Verfasst: 24. Juni 2005 09:44
von Hermes
nora hat geschrieben:Habe ich ewig benötigt (viele, viele Versuche) um zu glauben, daß es mit MinGW oder DevC++ (also gcc-Kompiler) nicht geht.
Das ist so nicht richtig. Es ist durchaus möglich, dies mit dem gcc zu kompilieren.

Man benötigt dazu die libmySQL.dll die bei dem Mysql im Unterverzeichniss lib/opt/ zu finden ist.

Mann muss dem Linker die Option -lmysql mit auf den Weg geben.

Und schliesslich muss die Datei mysql.h includiert werden und der include Ordner der Mysql Sourcen im Includepath sein.


Diese libmySQL ist zwar mit irgendsoeinem Microsoft Compiler compiliert funktioniert aber.


Also es geht .. aber einfach is anders ;)

Fehlermeldung des Linkers

Verfasst: 3. März 2007 09:16
von danneren
Hy,
Verwende DevC++ und muss Daten in eine MySQL DB schreiben.
wenn die Mysql routine eingebunden wird, schreit immer der Linker:

[Linker error] undefined reference to `mysql_init@4'
[Linker error] undefined reference to `mysql_real_connect@32'
[Linker error] undefined reference to `mysql_error@4'
[Linker error] undefined reference to `mysql_close@4'
ld returned 1 exit status
C:\Dev-Cpp_6.9_Beta\Makefile.win [Build Error] [MYSQL_Transfer_010307.exe] Error 1

probiere schon ewig herum
sieht so aus als die mysql.h oder die libmysql.lib nicht richtig verlinkt ist
habe aber in der Option linker..... die libmysql.lib eingebunden

vielleicht kannst du mir weiterhelfen


danke