Avatar ·

Welches native GUI API gibt es für C++ unter Linux? Was ist der Unterschied zu WinAPI?

Hallo zusammen. Ich bin ein C++-Anfänger und wechsle von Windows zu Linux. Unter Windows bin ich es gewohnt, einfache Fensteranwendungen mit WinAPI zu schreiben – dort ist alles klar: Man erstellt ein Fenster mit CreateWindow, verarbeitet Nachrichten in einer Schleife, zeichnet Buttons und Eingabefelder. All das ist Teil des Betriebssystems selbst, keine externen Bibliotheken nötig. Jetzt bin ich auf Ubuntu und möchte ein ebenso einfaches Programm in C++ schreiben – ein Fenster mit ein paar Buttons und einem Textfeld. Aber ich bin verwirrt: Linux hat, wie ich verstanden habe, keine einheitliche "native API" für GUI. Man spricht von Xlib, GTK, Qt, aber das ist nicht dasselbe. Xlib ist ein Low-Level-Protokoll für das X Window System, bietet aber keine vorgefertigten Steuerelemente (Buttons, Eingabefelder). GTK und Qt sind plattformübergreifende Frameworks, die nicht "nativ" in dem Sinne sind.