Programm unter Linux ohne Qt ausführen

Verschiedenes zu Qt
Antworten
ChornHulio
Beiträge: 62
Registriert: 7. November 2008 11:02

Programm unter Linux ohne Qt ausführen

Beitrag von ChornHulio »

Ich kenn mich alles andere als gut mit Linux aus. Nichts desto trotz hab ich jetzt mit Qt und Code::Blocks ein Programm hingekriegt. Das selbe unter Windows auch.
Jetzt die Frage: Wie kann ich so ein Programm auf einem PC mit Linux ausführen, auf dem KEIN Qt installiert ist?
Unter Windows müssen nur die drei .dll-Datei (QtCore4.dll, QtGui4.dll und mingw.dll oder so ähnlich) im Verzeichnis der ausführbaren Datei vorhanden sein.
Aber was muss ich unter Linux machen?
Da ich wirklich noch recht wenig Ahnung von Linux habe, wäre ich froh, wenn ich eine einigermaßen verständlicher Ansatz bekommen würde :)
Schonmal Danke für die Antworten!
RHBaum
Beiträge: 1436
Registriert: 17. Juni 2005 09:58

Beitrag von RHBaum »

Wie kann ich so ein Programm auf einem PC mit Linux ausführen, auf dem KEIN Qt installiert ist?
es gibt symetrien, und auch groessere huerden zu windows.

Linux nutzt nen systemcompiler, sprich alle komponenten sind meist mit ein und dem selben compiler uebersetzt. Und meist ist das der gcc.
du musst sicherstellen, dass dein programm mit nen compatiblen compiler und gebaut wurde und compatible flags verwendet.

oder du lieferst die eigenen so 's mit .... bzw stellst sicher das alles statisch gelinkt ist. Dann musst nur noch sicher sein, das dein *nix nen compatibles execute format verwendet (elf, a.out).

Normal geht man aber bei Linux selber andere Wege, wenn man SW richtig installierbar machen will.

es gibt eigentlich 2 wege.
die Source- und die Binaer-distribution.

bei der sourcedistri gibst dem anwender die sourcen inclusive nem configure script. das kann schon checken, ob bestimmte abhaengigkeiten (libc++, qt devel etc) installiert sind und sogar auf gewisse variationen reagieren. Dann bauts dem anwender das Zeugs auf seiner maschine ...

Vorteil - hohe flexiblitaet fuer dein programm
Nachteil - compile suites und devel versionen der abhaengigkeiten muessen installiert sein.

Binaerdistri - du gibst die binaerdateien (die fertig compilierten) und dokumentierst deine Abhaengigkeiten. Der user muss sich dann selber kuemmern. ^^ Also wenn schnell nen prog weitergeben willst oder so ... muss auf dem rechner z.b. per packetmanagment die erforderlichen packete in der richtigen version installiert sein. Die Packetmanagment systeme sind teilweisse unterschiedlich (rpm dkp) ....
Mehr Komfort fuer Anwender zum installieren ist dann natuerlich, wenn ihn fuer seine Distri schon nen packet baust. Also schauen was fuer compiler version, was fuer flags was fuer einstellungen fuer die distri (Ubuntu, Red Hat, Suse ... ) und fuer die Variante (64 bit / 32 Bit ) und Version gelten ... auf so ner maschine deine binaries bauen, und dann selber noch nen packet zu erstellen, wo dann auch die abhaengigkeiten gepflegt sind, so das das gebrauchte zeug bei bedarf nachinstalliert wird.
Vorteil: der user bekommts bequem und ohne stress auf den PC
Nachteil: fuer jede Distri version und Variante kannst nen eigenen packet brauchen.

Ansonsten gelten bei Linux bissi andere regeln was das finden von den dynamic libraries (shared objects in dem falle, also .so) angeht. Dafuer ist das statsiche linken da bissi einfacher.

Wenn du es nur auf rechner mit der gleichen distri und variante ausfuehren willst bleibts einfach, einfach nur sicherstellen das die qt4 runtimes installiert sind.
Bei unterschiedlichen Distries hasst andere Probleme, da ist die qt dein geringstes :-) da wirds aufwendiger ...

ciao ...
ChornHulio
Beiträge: 62
Registriert: 7. November 2008 11:02

Riesiges Danke!!!

Beitrag von ChornHulio »

Danke für die viele Schreibarbeit! Klasse Beitrag!!!
Nur kann ich mich jetzt nicht ganz entscheiden was ich machen soll - aber wozu hat man denn einen Chef, der das einem ohnehin vorschreibt ;)
macman
Beiträge: 1738
Registriert: 15. Juni 2005 13:33
Wohnort: Gütersloh
Kontaktdaten:

Re: Riesiges Danke!!!

Beitrag von macman »

ChornHulio hat geschrieben:aber wozu hat man denn einen Chef, der das einem ohnehin vorschreibt ;)
Die Kunst besteht darin, den Chef das entscheiden zu lassen, was man haben möchte. Ist nicht ganz einfach, aber im Laufe der Jahre entwickelt man eine gewisse Kunstfertigkeit darin :-)
Die deutsche Schriftsprache ist case-sensitive. Außerdem gibt es eine Interpunktionsnorm. Wenn manch einer seine Programme genauso schlampig schreibt, wie sein Posting hier, dann sollte er es lieber bleiben lassen.
Antworten