Seite 1 von 2

QT Programme auf PC ohne QT

Verfasst: 3. Oktober 2007 14:23
von alfonsospringer
Muss auf jedem PC auf dem ein QT Programm ausgeführt werden soll QT installiert sein, oder lässt sich das auch anders bewerkstelligen?

Verfasst: 3. Oktober 2007 14:59
von PhilipLB
Einfach die nötigen DLLs mitgeben. Jedenfalls in der Windows-Welt. :)

Verfasst: 3. Oktober 2007 15:30
von alfonsospringer
ok - thx

Verfasst: 3. Oktober 2007 18:48
von M@g!ndo$ch
Oder Qt statisch kompilieren. Dann werden die Programme eben ziemlich groß, aber man muss keine Libs mitgeben....

Verfasst: 3. Oktober 2007 18:49
von alfonsospringer
wie kompiliert man statisch?

Verfasst: 3. Oktober 2007 19:01
von M@g!ndo$ch
Du musst configure.exe folgendermaßen aufrufen:

configure -static

Wenn du MinGW benutzt solltest du noch folgendes beachten:

http://www.qtwiki.de/wiki/Mingw10.dll

Gruß M@g

Verfasst: 3. Oktober 2007 19:20
von alfonsospringer
es klappt

thx

Verfasst: 4. Oktober 2007 12:05
von Zandru
falls du plugins benutzt (z.B. für jpeg, gif), wirds noch etwas komplizierter, dann musst du auch die plugin-dlls mitgeben (im richtigen Pfad) und im static-build Fall die plugins explizit dazulinken.
http://doc.trolltech.com/4.3/plugins-ho ... ic-plugins

Verfasst: 6. Oktober 2007 23:11
von sea_bear
Zandru hat geschrieben:falls du plugins benutzt (z.B. für jpeg, gif), wirds noch etwas komplizierter, dann musst du auch die plugin-dlls mitgeben (im richtigen Pfad) und im static-build Fall die plugins explizit dazulinken.
http://doc.trolltech.com/4.3/plugins-ho ... ic-plugins
Und wie linke ich statisch unter Linux? Ich nutze hierfür KDevelop und habe einen entsprechenden Schalter noch nicht gefunden.

Tobias

Verfasst: 8. Oktober 2007 16:56
von Zandru

Verfasst: 8. Oktober 2007 18:39
von MichaelS
Und wie linke ich statisch unter Linux?
Wieso willst Du QT unter Linux statisch linken? Die QT-Runtime lässt sich bei den meisten Distributionen mit der entsprechenden Paketverwaltung leicht installieren und wird oftmals ohnehin per default installiert, da die Bibliothek von vielen Anwendung benötigt wird. Wozu also noch einmal QT auf die Platte packen?

Gruß Michael

Verfasst: 8. Oktober 2007 19:38
von macman
Und wenn die Qt-Versionen nicht identisch sind? Woher willst Du wissen das Qt mit den richtigen Einstellungen compiliert wurde? Statisch linken kann durchaus Vorteile haben.

Verfasst: 9. Oktober 2007 14:10
von MichaelS
Statisch linken kann durchaus Vorteile haben.
Klar kann es das haben. Aber m.E. wird viel zu oft nur deswegen statisch gelinkt, weil es für den Entwickler bequemer ist, dem Anwender ein riesiges Executable vor die Füße zu werfen, als seine eigenen Gewohnheiten in Frage zu stellen. Die Distributoren compilieren QT doch schon mit allen möglichen Optionen und in den meisten Distributionen sind die QT-Versionen (sowohl QT3 wie auch QT4) recht aktuell. Das müssen schon sehr spezielle Anwendungen sein, wenn sie mit diesem "Standard" nicht klarkommen. Und selbst dann kann man die benötigten Bibliotheken mitliefern, damit die Anwender bei einem möglichen Update nicht jedesmal von neuem einen großen Download starten muss (nicht jeder Anwender hat eine Flatrate).

Nun, ich will hier keinen Flame lostreten - letztlich muss jeder für sich selbst entscheiden, was er/sie für richtig hält.

Verfasst: 11. Oktober 2007 22:48
von sea_bear
OK, muss ja wirklich jeder selber wissen ob, oder ob nicht statisch linken benötigt wird.
Ich für meinen Teil hatte ein sehr kleines QT4 Programm und wollte dies bei meiner Freundin mal eben auf den Rechner packen. Mal eben rüberkopieren und fertig dachte ich. Na denkste. Zig Abhängigkeiten hatte es und am Ende musste ich auf ihrem Rechner QT4 vollständig mit allem drum und dran installieren weil ich eben nicht wußte, welche Dateien effektiv wirklich benötigt werden. Deswegen statisch linken. Wäre doch in dem Fall einfach gewesen. Statisch linken, rüberkopieren und fertig.

Nur wie mache ich das jetzt mit QT4, KDevelop und OpenSuSE 10.2 (64Bit)???????

Ich will hier auch keine Diskussion hier lostreten. Eine einfache Antwort würde mir schon genügen.

mfg
Tobias

Verfasst: 12. Oktober 2007 07:21
von macman
sea_bear hat geschrieben:Ich will hier auch keine Diskussion hier lostreten. Eine einfache Antwort würde mir schon genügen.
Du musst Qt statisch compilieren, dann brauchst Du schon mal die Libs nicht mitliefern. Guck dir einfach mal die configure Hilfe an.