Archiv verlassen und diese Seite im Standarddesign anzeigen : [win]+qt+mysql.h
Hi,
ich habe erfolgreich unter Linux mit QT und der Mysql.h die von mysql mitgeliefert wird ein kleines QT+mysql Programm geschreiben. Es funktioniert wunderbar unter Linux.
Jetzt wollte ich das mal unter Windows probieren, deshalb habe ich mir Mysql fuer Windows und QT-2.30 GPL gezogen.
Mysql brauche ich deshalb, da da die mysql.h und die mysql.lib mitgeliefert wird. Desweitern habe ich c++ Studio von M$ installiert.
Unter Linux nehme ich das zum uebersetzten:
g++ -I/usr/include/qt -c qcapi2name.cpp -Wall
g++ -I/usr/include/qt -c main.cpp -Wall
g++ -L/usr/lib -L/usr/X11R6/lib -lqt -lmysqlclient -o qcapi2name qcapi2name.o main.o -Wall
rm -f *.o
Doch wie mache ich das jetzt unter WIndows, gibt es da auch so ein art make, oder was ??
Ich probiere jetzt schon mehr als eine Stunde in diesem dummen Studio c++ von m$ rum, doch ich bekomme das nicht uebersetzt!!
Was muss ich tun ??
Gruss
Jonas
Ach so, und statisch sollte es auch gelink werden, da ich es auf ein anderen PC kopieren will, aber ohne, das ich mysql weder qt installieren will.
anda_skoa
10-11-2002, 19:55
Das Konsolenmake von VC++ heitß nmake.
Wenn du mit qmake oder tmake das Makefile aus dem .pro File generierst, sollte das gehen.
Ciao,
_
dumme frage, wie schreibe ich so ne .pro file ??
Gruss
Jonas
anda_skoa
10-11-2002, 22:12
Schau dir unter Linux eines der Qt Tutorials an.
Die sind im Source Paket enthalten.
Wahrscheinlich geht es auch ohne, direkt aus dem Visual Studio heraus.
Ciao,
_
Hi !
jetzt habe ich es mal geschaft, so ein .pro file zu schreiben, doch die mysql.h usw sind unter c:\mysql\include, und die lib unter c:\mysql\lib, wie kan ich die jetzt noch dazu fuegen ??
Gruss
jonas
anda_skoa
11-11-2002, 10:59
Für die Includes
INCLUDEPATH =
für die lisbs
DEPENDPATH =
Dann evnetuell:
win32:LIBS =
unix:LIBS =
Letztes gehr vielleicht auch mit includes.
Benutzt man dann, wenn es unter Windows anders heißt.
Bei libs zB ist unter Unix immer libxxx.a bei Windows xxx.lib
Pfade sollten nach Möglichkeit natürlich gleich sein.
Ciao,
_
Hi,
danke fuer deine Anworten bisher...
TEMPLATE = app
HEADERS = settings.h \
qcapi2name.h
SOURCES = main.cpp \
qcapi2name.cpp
INCLUDEPATH=c:\mysql\include
DEPENDPATH =c:\mysql\lib
TARGET=qcapi2name
Wenn ich das jetzt per nmake uebersetzte kommt das:
mysql_com.h: error c2146: Syntaxfehler: Fehlendes ; vor bezeichner fd ...
Da kommt noch mehr!
Was kann da sein?
Gruss
JOnas
anda_skoa
11-11-2002, 21:57
Hmm vielleicht liegt es an einem Header, der vorher inkludiert wurde.
Ciao,
_
Hi,
danke fuer deine Hilfe, aber erst jetzt habe ich gemerkt, das qt 2.3.0 mit dem ich die Appprogrammieren will garnicht so viel kann wie qt-3.X. (Ich habe die Docu zu 3.X aber programmiere mit 2.3.0.
Und eine teil was in 3.X vorhanden ist nämlich Qconfig gibt es nicht bei qt 2.3.0.
Also war es garnix mit portabel schreiben, weil ich jetzt die Kconfig klasse nehmen muss, aber diese gibt es ja unter win nicht.
Also muss ich doch zwei von einander getrennte apps schreiben, einmal fuer Linux und fuer windows.
Trotzdem danke.
Gruss
Jonas
P.S. ein kleine frage hätte ich noch: Wo bekomme ich doku zu proggen unter Windows mit GUI ?
anda_skoa
12-11-2002, 10:41
Original geschrieben von jonasge
Hi,
danke fuer deine Hilfe, aber erst jetzt habe ich gemerkt, das qt 2.3.0 mit dem ich die Appprogrammieren will garnicht so viel kann wie qt-3.X. (Ich habe die Docu zu 3.X aber programmiere mit 2.3.0.
Und eine teil was in 3.X vorhanden ist nämlich Qconfig gibt es nicht bei qt 2.3.0.
Ja, leider gibt es von der Qt3 noch keine non-commercial Version für Windows.
Finde ich auch schade.
QSettings (falls du die meinst) ist aber unter Windows eh nicht gut.
Die benutzt da nämich die Registry statt config files.
Am besten du benutzt eine Config lib, die sowohl unter Windows als auch unter Linux geht.
LeoIni zum Beispiel:
http://home.pages.at/kingleo/development/cpp-en.html#leoini
Es wäre möglicherweise nicht schwer, KConfig zu portieren oder Teile davon zu verwenden (zum Beispiel das Umwandeln der Datentypen in Strings und zurück).
Also muss ich doch zwei von einander getrennte apps schreiben, einmal fuer Linux und fuer windows.
Würde ich nicht machen.
Zwei Apps zu pflegen ist viel zu viel Aufwand.
Da ist es leichter, einzelne Teile durch #ifdef #else #endif entsprechen anders zu implementieren.
P.S. ein kleine frage hätte ich noch: Wo bekomme ich doku zu proggen unter Windows mit GUI ?
Siehe oben.
Wenn du nicht mit Qt2 Funktionalität auskommst (kann ich mir eigentlich nciht vorstellen) dann solltest du eher eine andere Crossplattform Bibliothek in Erwägung ziehen, als eine extra Windows App zu machen.
Ciao,
_
hi,
habe gerade ne antwort von trolltech bekommen:
Hi Jonas,
Unfortunately, Trolltech has not found a way of making free versions for
Mac OS X and Windows without risking the very business model we depend
upon to be able to further develop and support Qt. We do not plan
further releases of non commercial editions of Qt.
Best regards,
Sigrid
Trolltech AS, Waldemar Thranes gt. 98, N-0175 Oslo, Norway
gruss jonas
Powered by vBulletin® Version 4.2.5 Copyright ©2025 Adduco Digital e.K. und vBulletin Solutions, Inc. Alle Rechte vorbehalten.