Was kann QT?

Dein Thema passt einfach in kein Forum? Dann probiers mal hier.
Antworten
spacebasic
Beiträge: 2
Registriert: 30. August 2007 07:44

Was kann QT?

Beitrag von spacebasic »

Hallo Leute,

nun bin ich auf QT gestoßen und raffe es nicht, was QT kann. Leider sind die Info's im deutschsprachigen Raum etwas dürftig bis nix!
Wie muß ich das nun verstehen?!

Angenommen ich habe ne Debianbox-Minimal Installation, also keinen Windowmanager wie KDE oder Gnome o.ä., nur die Konsole! Kann ich mit Hilfe von QT nun ein Programm mit GUI aus/auf der Konsole laufen lassen? Oder wie muß ich das verstehen?

Welche Vorraussetzungen müssen erfüllt sein, um QT nutzen zu können, also welche Vor-Installationen? (X-Server installieren?)

Wie gesagt, ich noch nix damit anfangen und hoffe, das mir einer auf die Sprünge hilft!

MfG
RHBaum
Beiträge: 1436
Registriert: 17. Juni 2005 09:58

Beitrag von RHBaum »

Also die QT prinzipiell ist nen Framework fuer (nahezu) plattformunabhangiges GUI.

Das heisst es umfasst so ca. alle standard grafischen Anzeigeelemente, also sowas wie einzeilige eingabefelder, Listen, Comboboxen, checkboxen, komplettes Fensterhandling.
Rudimentaere Malfunktionen, und fuer OpenGL gibts auch was.
Streams und filehandling sowei ne Socket Abstraktion ist auch dabei.

Also quasi alles was man auf den unterschiedlichen BS konzeptionell unter eine haube bringen kann.

Zusaetzlich bringts noch komfort klassen in form von String-klassen, eigene Container(templates), eigene Plugin Impl, usw mit.

Um das nutzen zu koennen brauchst natuerlich einen grafischen unterbau. Unter windows halt die winapi, unter Linux nen aktuellen X-Server, unter mac os auch sowas :-)

unter linux musst also X-Server, qtlibs, die header fuer die qt, also irgendwas mit qtdevel, und natuerlich den compiler / IDE haben.

bei den Versionen aufpassen.
Kann sein dass die QT hilfstools noch seperat installieren musst, also QDesigner QAssistant und so .... qmake und co sollten bei dem devel packet dabei sein.

Ciao ...
spacebasic
Beiträge: 2
Registriert: 30. August 2007 07:44

Beitrag von spacebasic »

Hallo RHBaum,

vielen Dank für die Erläuterungen.

Für mich nochmal zum mitmeißeln: :)
-also nen xserver muß normal installiert sein (ich rede jetzt mal nicht von der QT-Embedded)
-wenn ich nen Programm habe, was in QT geproggt wurde, brauch ich auch keine KDE oder Gnome etc.? Das Programm wird dann in der Konsole gestartet und die GUI kommt hoch? Das muß ja dann, so denke ich, in einem Container von QT laufen, richtig?

Achso, noch ne Frage (da ich ja schon mal dabei bin):
Wenn ich den Source bzw. die Dependencies eines Progs habe, wie kompiliere ich das ganze in Linux und in Win?

Vielen Dank!
Volker
Beiträge: 343
Registriert: 30. Juni 2005 05:27

Beitrag von Volker »

Braucht man den auch ne Graphische Oberfläche wenn man sich nur auf die QtCore bzw. nicht Gui Komponenten beschränkt? Ich denke nicht.
Dann sollten zumindest so sachen wie Threads, Container, Socket Klassen etc. zur Verfügung stehen.
Hab's aber noch nie getestet.
Bitte seid so nett und ändert den Titel von Beiträgen die gelöst wurden, auf [gelöst] Beitragstitel
RHBaum
Beiträge: 1436
Registriert: 17. Juni 2005 09:58

Beitrag von RHBaum »

@spacebasic
genau, zum uebersetzen braucht man die XHeader, die QT header, die QT libs, paar qt tools (qmake moc ....).

zum ausfuehren eines so geproggten programms, braucht man die X runtime, die QT runtime (und die c++ runtime klar)

die X runtime kommt mit dem Xserver klar
Die qt runtime musst meist extra installieren

KDE basiert auf QT, bringt also eine QT runtime mit bzw ist vorrausetzung (abhaengigkeiten). Aber, die (noch) aktuelle KDE (stable) baut auf QT3 auf, die aktuelle QT ist 4.3.1
Die runtimes laufen aber nebeneinander ohne probleme .....
Brauchst also keinerlei speziellen window manager oder desktop umgebung. Und QT programme laufen damit z.b. unter gnome auch ohne probleme (qtlibs installiert, mal vorrausegesetzt) und unter jedem anderen window manager auch. Kann halt sein das die Look und feels bissi unterschiedlich sind.

@volker

Braucht man den auch ne Graphische Oberfläche wenn man sich nur auf die QtCore bzw. nicht Gui Komponenten beschränkt? Ich denke nicht.
Dann sollten zumindest so sachen wie Threads, Container, Socket Klassen etc. zur Verfügung stehen.
Hab's aber noch nie getestet.
Ich habs auch noch ned getestet, im qtqore und qtxml steckt glaub ich nix drinn, was den X Server benutzt. also kanns sein das man qt console programme auch ohne X runtime zum laufen bekommt.

Das was dir aber prinzipiell probleme bereiten wird, iss ne entwicklungsumgebung ohne X runtime zu bekommen, weil das gui packet wird immer mit installiert und compiliert. also auf der entwicklungsmaschine wuerdest es nur mit viel gefuddel und schmutzigen tricks hinbekommen, die qtcore ohne X zum laufen zu bekommen.

Auf der anderen seite, die qtcore dinger allein sind es meiner meinung nach nicht wert, sich die qt abhaengigkeit ins boot zu holen. Da gibts bessere libs. die stl ist sauberer und unkomplizierter z.b.
Ich benutze auch lieber std::string statt QString .... nur eben fuer die befeuerung der QT Gui sind die QT container und der QString meist besser bzw. bieten mehr comfort.

Ciao ...
Christian81
Beiträge: 7319
Registriert: 26. August 2004 14:11
Wohnort: Bremen
Kontaktdaten:

Beitrag von Christian81 »

RHBaum hat geschrieben: Ich habs auch noch ned getestet, im qtqore und qtxml steckt glaub ich nix drinn, was den X Server benutzt. also kanns sein das man qt console programme auch ohne X runtime zum laufen bekommt.
Das war der Sinn der ganzen Übung...
MfG Christian

'Funktioniert nicht' ist keine Fehlerbeschreibung
Antworten