python glfw.init() падает на машине EC2 без дисплея
Я пытаюсь выполнить небольшой код рендеринга, используя glfw и PyOpenGL (рендеринг в невидимом окне) на машине EC2 с графическим процессором.
Код не работает сразу при запуске
import glfw
glfw.init()
Со следующей ошибкой:
glfw.GLFWError: (65544) b'X11: The DISPLAY environment variable is missing'
Fatal Python error: Couldn't create autoTLSkey mapping
Aborted (core dumped)
Код позже попытается создать окно и отобразить его:
glfw.window_hint(glfw.VISIBLE, False)
window = glfw.create_window(width, height, "hidden window", None, None)
glfw.make_context_current(window)
....
import OpenGL.GL
....
OpenGL.GL.glDrawArrays(OpenGL.GL.GL_TRIANGLES, ...)
OpenGL.GL.glReadPixels(0, 0, width, height, OpenGL.GL.GL_RGB, OpenGL.GL.GL_UNSIGNED_BYTE)
Но я все еще довольно далеко от этого
Редактировать - я установил sudo apt-get install libglfw3-dev libglfw3
делать import glfw
Работа
Edit2 - здесь есть какой-то ответ OpenGL без X.org в Linux, но он не имеет отношения к Python или glfw и не может использоваться напрямую