GUI Programme unter Linux erstellen



  • Ich persönlich verwende Gtkmm. GTK+ ist eine C Bibliothek, die objektorientiert geschrieben ist. Gtkmm ist ein Wrapper dafür, der sehr C++-artig geschrieben wurde. Smart-Pointers, echte Polymorphie, Anbindungen zur Standardlib, etc.
    Qt dagegen hat (extrem subjektive Aussage) nicht mehr viel mit C++ zu tun, die meiste Standardbibliothek gabs da noch gar nicht, deshalb gibt es da eigene Strings, Sontainer, aber IMHO schlechtere.

    Eigentlich ist die Hauptfrage aber Folgende: Verwendest du KDE? Ja: Qt, Nein: GTK+.
    Meistens ist nämlich die GTK+-Integration in KDE schlecht (man erkennt die GTK+-Anwendungen sofort, sie fallen aus dem Bild) und umgekehrt noch schlechter (KDE-Anwendungen sehen genau gleich aus wie in KDE).



  • @proGTK

    Qt dagegen hat (extrem subjektive Aussage) nicht mehr viel mit C++ zu tun, die meiste Standardbibliothek gabs da noch gar nicht, deshalb gibt es da eigene Strings, Sontainer, aber IMHO schlechtere.

    Wie kommst Du darauf? Qt ist ein C++ Framework. Ich kann alles was C++ biete benutzen Standardlib / Boost usw. Es ist mir überlassen ob ich std::string nehme oder QString. Die Qt eigenen Container kann man nutzen muss man aber nicht!!!

    Scylla



  • Ich finde QT auch besser, besonders: Es läuft auf allen Systemen (sogar Ubuntuu), und man kann falls gewünscht die Software noch auf Windows und Mac Portionieren.

    MfG



  • derFer schrieb:

    Es läuft auf allen Systemen (sogar Ubuntuu)

    😮 Eindeutiger Sieg für Qt 👍
    ...
    Sind nicht praktisch alle Toolkits (Qt, GTK+, wxWidgets, FLTK, FOX, etc.) für Linux, Windows, Mac und sogar Ubuntuuuuu verfügbar?



  • proGTK schrieb:

    Eigentlich ist die Hauptfrage aber Folgende: Verwendest du KDE? Ja: Qt, Nein: GTK+.

    Das ist eigentlich doch egal?
    Ich kenne mich nicht so gut in GTK+ aus, allerdings wird denke ich mal Qt "besser" weiterentwicklet von Nokia/Trolltech und du kannst eventuell in Zukunft damit auc Meego/Symbian Apps für Handys schreiben. Es gibt dazu auch Qt Developer Days und was weiß ich. Mit Qt bin ich bisher immer gut gefahren. Damals war der Vorteil von GTK+, das du deine Programme nicht zwingend unter GPL stellen musst und somit den Source veröffentlichen musst, aber mittlerweile ist das bei QT auch nicht anders.



  • Hast du das mit dem Portieren mal gemacht ?

    Meine Erfahrungen sind da schlecht: meist wird irgendeine lib, die du brauchst, inzwischen nicht mehr weiterentwickelt. Und dann hast du die Auswahl selbst diese lib auf den aktuellen Stand anzupassen, oder es zu lassen.

    Meines Wissens musst du bei QT aufpassen, ob die libs mit der gleichen Compilerversion compiliert wurden wie der Compiler, den du verwendest. Es gibt da Hinweise im Internet (und meine eigene Erfahrungen), dass es da mitunter sehr eigenartige Compiler-Fehlermeldungen gibt, deren Ursache nicht in deinem Code liegt...



  • proGTK schrieb:

    Ich persönlich verwende Gtkmm. /.../

    Dieser Teil des Beitrags ist vermutlich der inhaltlich richtige Teil.



  • Serenity schrieb:

    proGTK schrieb:

    Eigentlich ist die Hauptfrage aber Folgende: Verwendest du KDE? Ja: Qt, Nein: GTK+.

    Das ist eigentlich doch egal?

    Schon mal GTK+ Programme unter KDE gesehen?
    Sieht schlecht(=passt sich nicht an die Umgebung) aus.



  • Ja habe ich, läuft z.B. gerade hier...
    Oder was ist mit GIMP oder Inkscape, habe ich beide auch, nutzten beide GTK und mein System ist: openSUSE 11.3 mit KDE 4.4



  • Vorteil von GTK ist, dass es auch mit "normalem" C zu programmieren ist, und man sich den ganzen C++ Overhead sparen kann. Zudem gibt es Anbindung an alle möglichen OO Sprachen auch C++, Java und natürlich auch für div. Scriptsprachen wie Python, PHP usw, wer denn unbedingt OOP betreiben will... Alles im WIKI nachzulesen.
    Ich kenne kein anderes GUI Toolkit, dass das bietet.
    Und wenn man sich einmal durch das erste Programm "gebissen" hat, schüttelt man weitere GUI Programme quasi aus "dem Ärmel".
    Ich kenne auch kein Toolkit, dass sich besser für Crossdevelopment eignet. Ausser systembedingter Besonderheiten (das betrifft idR nicht das GUI) sind keine Anpassungen nötig. Und das Aussehen der Applikation kann dank Themes durch den Benutzer selbst angepasst werden.
    Ach ja... Nokia will ja anscheinend wieder zu M$ wechseln. Ob dann QT weiter so forciert wird darf hinterfragt werden 😕
    Gruss GTK Fan


Anmelden zum Antworten