ejecutar compilar compilador c++ linux window

compilar - ¿Cómo se crea una ventana en Linux con C++?



gcc linux (3)

Ax Martin dijo que X11 (o su bifurcación XOrg en estos días) es el sistema de ventanas, pero en realidad puede escribir aplicaciones X11 (es decir, clientes) sin usar un kit de herramientas, solo con las bibliotecas X Vea here para la documentación.

Por lo general, no es la mejor idea hacerlo, ya que es bastante doloroso e involucrará una gran cantidad de código para que funcionen aplicaciones relativamente simples como usted espera.

Esperaba una API de Linux similar a la API de Windows. Todo lo que veo en Google son referencias a Qt y GTK. Realmente no necesito nada más que una simple ventana para dibujar con OpenGL, por lo que estas bibliotecas parecen hinchadas para mi uso. ¿Qué utilizan Qt y GTK para crear ventanas en Linux? ¿No hay nada más bajo nivel?


El sistema de ventanas X generalmente realiza el dibujo; luego, utiliza un kit de herramientas como Qt o GTK sobre Xlib en bruto para proporcionar eventos, arrastrar y soltar, iniciar aplicaciones en los botones del ratón y todo lo demás en el escritorio.

Es bastante fácil trabajar directamente con Xlib y opengl o si solo desea aprender sobre OpenGL, glut proporciona el marco que necesita para visualizar una ventana, manejar eventos del mouse / teclado, etc.


Para OpenGL, la forma más fácil de hacerlo es utilizando glut o SDL . Aquí hay un ejemplo aproximado usando GLUT:

#include <GL/glut.h> int main (int argc, char **argv) { glutInit(&argc, argv); glutInitDisplayMode(GLUT_RGBA | GLUT_DOUBLE | GLUT_DEPTH); glutInitWindowSize(800, 600); glutInitWindowPosition(100, 100); glutCreateWindow("My new window"); /* ... */ }

Realmente desea evitar utilizar Xlib directamente, ya que es extremadamente tedioso de usar. Además, GLUT y SDL facilitan el transporte de su aplicación OpenGL a diferentes plataformas.