Avatar ·

¿Cuál es la API GUI nativa de Linux para C++? ¿En qué se diferencia de WinAPI?

Hola a todos. Soy un desarrollador principiante de C++ que está migrando de Windows a Linux. En Windows estoy acostumbrado a escribir aplicaciones de ventana simples con WinAPI — allí todo está claro: creas una ventana con CreateWindow, procesas mensajes en un bucle, dibujas botones y campos de entrada. Todo esto es parte del propio sistema operativo, no se necesitan bibliotecas de terceros. Ahora estoy en Ubuntu y quiero escribir un programa simple en C++ — una ventana con un par de botones y un campo de texto. Pero estoy confundido: Linux no tiene una "API nativa" única para GUI, según tengo entendido. Se habla de Xlib, GTK, Qt, pero no son lo mismo. Xlib es un protocolo de bajo nivel para X Window System, pero no proporciona elementos de control listos (botones, campos de entrada). GTK y Qt son frameworks multiplataforma que no son "nativos" en el sentido de que no forman parte del kernel de Linux. Pregunta: ¿qué se considera entonces la API GUI nativa para Linux? ¿Existe un análogo directo de WinAPI? Si quiero escribir un programa en C++ puro sin dependencias de GTK o