Seite 1 von 3
Qt auf anderen Rechnern
Verfasst: 12. Dezember 2006 13:10
von KingV1k
Hi,
mein fertiges Programm, welches die Qt-Bibliotheken benutzt, läuft momentan nur auf PC's die Qt installiert haben. Richtig?
Was und wie soll ich machen, damit es auf allen Rechnern läuft?

ch benutze Qt4)
Verfasst: 12. Dezember 2006 13:39
von BartSimpson
2. Möglichkeiten
1. Die Qt Bibliotheken mit ausliefern(besser)
2. alles statisch übersetzen.
Verfasst: 12. Dezember 2006 13:51
von KingV1k
Wie meinst du das mit Qt-Bibliotheken mit ausliefern? Wie geht das?
Verfasst: 12. Dezember 2006 14:14
von BartSimpson
Das hängt von deinem System ab. Unter Linux kein Problem, da fast alle Ausgaben schon Qt4 mitringen. Unter Windows sieht es leider etwas düster aus. Da du dort du Bibliotheken damit es gut Funktioniert im Systemweiten Assebly Cache unterbringen musst. Sprich du musst ein MSI Paket bauen.
Was aber derzeit mit dem kostenlosen WIX nicht geht. Da dieses ein Bug im Zusammenhang mit Systemweiten nativen Assemblys hat. Also muste ein kommerzielles Programm zur MSI Erstellung nutzen.
Verfasst: 12. Dezember 2006 14:22
von KingV1k
also schließt sich die 1. Möglichkeit für mich aus. Leider muss das Programm auf Windows laufen.

Das bedeutet ich muss es statisch übersetzen. Wie geht das genau?
configure -debug-and-release -static
richtig? und dann läuft es auf allen Windows-Rechnern?
Verfasst: 12. Dezember 2006 14:29
von BartSimpson
Besser du erstellt die ein 2. Verzeichnis, wo du die Qt lib statisch ablegst.
Dort baust du die denn wie folgt:
configure -release -static Und alle Optionen die du haben willst
make sub-src
das wars
wenn du denn dein Programm statisch übersetzen willste macht du das wie folgt
make distclean
PfadZum2.QtVerzeichnis/bin/qmake
make
Verfasst: 12. Dezember 2006 14:43
von KingV1k
2. Verzeichnis mit Qt lib erstellen? Meinst du jezt nur den Ordner lib aus der Qt-Installation in ein neues Verzeichnis zu kopieren oder die komplette Qt-Installation in ein neues Verzeichnis zu kopieren?
Was genau macht make sub-src?
Was genau macht make distclean?
PfadZum2.QtVerzeichnis/bin/qmake? in die Path-Variable kopieren?
Verfasst: 12. Dezember 2006 14:50
von BartSimpson
Du lädst die die Qt Quellen runter.Diesmal aber als Quellen. Dann entpackst du das ganze in einem 2. Verzeichnis
make sub-src erstellt nur die Qt Bibliothek ohne Demos und Hilfsprogramme
make distclean räumt dein Projekt auf(entfern alte Objektdateien und Make Dateien)
Bloss nix an der PATH Variable drehen!!!
Wieso nimmst nicht den MS Compiler??
Der ist schneller und du kannst die ganze Win32 API nutzen.
Verfasst: 12. Dezember 2006 15:08
von KingV1k
weil ich mit eclipse arbeite. außerdem dachte ich die MS sachen sind nicht kostenlos. Weißt du zufällig auch wie man es mit MinGW macht?
Was meintest du sonst mit "PfadZum2.QtVerzeichnis/bin/qmake"?
Verfasst: 12. Dezember 2006 15:13
von BartSimpson
Den MS Compiler gibt es für umsonst im Rahmen des VS 2005 C++ Express.
Mit dem gcc geht es so wie oben beschrieben.
Verfasst: 12. Dezember 2006 15:15
von BartSimpson
Was haste den für ein Plugin genommen, damit Eclipse mit Qt läuft?
Denn eigentlich müssen man nur die Compiler Aufrufe ändern, und schon nimmt der MS statt den gcc.
Verfasst: 12. Dezember 2006 15:21
von KingV1k
beim MinGW gibt es leider kein make sub-src oder make distclean, deswegen versteh ich auch nicht wie du es meinst.
Was meintest du mit "PfadZum2.QtVerzeichnis/bin/qmake"?
Verfasst: 12. Dezember 2006 15:30
von BartSimpson
doch.
make ein ein Programm aus dem mingw Paket.
und distclean bzw. sub-src sind sogenannte Makeziele
Verfasst: 12. Dezember 2006 15:38
von KingV1k
achso mit qmake soll ich die Makefiles erstellen. Ich dachte die ganze Zeit distclean und sub-src seien Optionen.
Ich hab jetzt configure -debug-and-release -static gestartet. Werd ich damit vielleicht später Probleme bekommen?
danke für deine Hilfe
Verfasst: 12. Dezember 2006 15:43
von BartSimpson
Zum Debuggen würde ich keine statischen libs nehmen. Aber damit kannste später statische Programme erzeugen.