I am trying to run a OpenGL program which does not need a window, this program creates a file. This is done on a debian xfce, so far so good.
Then i try to run the program from another computer using ssh, if the xfce is on with a monitor, I can compile and run the program with DISPLAY=:0 (so glut is opened for like a millisecond and closed).
The problem is when i reboot and I disconnect the monitor, xfce won't launch the GUI, and glut will not launch.
VirtualGL is not what i want, hidden window is not what I want, I want to run the OpenGL program from terminal without the X GUI. Or to be able to force xfce to boot GUI and make it login in the GUI so i can launch glut.
A small example would be nice.
With the current driver models, what you want to do it impossible in a way that works reliably. All the OpenGL implementations that so far exist for Linux absolutely require some kind to window (and be it an invisible, hidden 1×1 pixels small one) to create an OpenGL context.
Note that in the near future with the introduction of Wayland and a larger EGL based, OpenGL infrastructure is about to change. But we are not there yet.
Also if you can live with a slow, software implementation, Mesa has a sidekick library called "OSMesa" that gives you a OpenGL context that renders to a memory region provided by your program. But OSMesa won't use any kind of GPU acceleration.