Tengo un sistema Ubuntu 14.04 con los siguientes paquetes instalados:
libegl1-mesa:amd64
libegl1-mesa-drivers:amd64
libgl1-mesa-dri:amd64
libgl1-mesa-dri:i386
libgl1-mesa-glx:amd64
libgl1-mesa-glx:i386
libglapi-mesa:amd64
libglapi-mesa:i386
libgles2-mesa:amd64
libglu1-mesa:amd64
libopenvg1-mesa:amd64
libwayland-egl1-mesa:amd64
mesa-utils
xvfb
Quiero iniciar una aplicación en xvfb. Primero comienzo xvfb con:
$ Xvfb :1 -screen 0 1024x768x24 +extension GLX +render -noreset >> xsession.log 2>&1 &
y luego verifique el archivo de registro xvfb:
Initializing built-in extension Generic Event Extension
Initializing built-in extension SHAPE
Initializing built-in extension MIT-SHM
Initializing built-in extension XInputExtension
Initializing built-in extension XTEST
Initializing built-in extension BIG-REQUESTS
Initializing built-in extension SYNC
Initializing built-in extension XKEYBOARD
Initializing built-in extension XC-MISC
Initializing built-in extension SECURITY
Initializing built-in extension XINERAMA
Initializing built-in extension XFIXES
Initializing built-in extension RENDER
Initializing built-in extension RANDR
Initializing built-in extension COMPOSITE
Initializing built-in extension DAMAGE
Initializing built-in extension MIT-SCREEN-SAVER
Initializing built-in extension DOUBLE-BUFFER
Initializing built-in extension RECORD
Initializing built-in extension DPMS
Initializing built-in extension Present
Initializing built-in extension DRI3
Initializing built-in extension X-Resource
Initializing built-in extension XVideo
Initializing built-in extension XVideo-MotionCompensation
Initializing built-in extension SELinux
Initializing built-in extension GLX
que no muestra errores Además, parece que GLX se ha cargado correctamente. Ahora, si reviso el servidor con
$ glxinfo -display :1
yo obtengo
name of display: :1
Xlib: extension "GLX" missing on display ":1".
...
Error: couldn't find RGB GLX visual or fbconfig
Xlib: extension "GLX" missing on display ":1".
...
Error: couldn't find RGB GLX visual or fbconfig
Xlib: extension "GLX" missing on display ":1".
...
De hecho, la aplicación que quiero iniciar en este servidor y que necesita GLX no se iniciará.
Después de revisar varias páginas de documentación y foros, no tengo idea de lo que está sucediendo aquí. ¿Por qué el archivo de registro del servidor X no muestra ningún error si la extensión GLX no se cargó correctamente? ¿Hay algo que deba verificar?
Respuestas:
Xvfb (X virtual Frame buffer) es un Xsever virtual que no admite aceleración de hardware real.
Necesita generar llamadas openGL, con virtualGL , bifurcar las llamadas reales a través de un servidor X 3D real y renderizado 2D a Xvfb u otro servidor X 2D.
fuente
en mis archivos de registro veo que todo está bien hasta Inicializar la extensión incorporada GLX pero luego es seguido por
puede ser el problema clave es con xkbcomp?
fuente
En la página wiki de Xvfb dice: "A diferencia de un servidor de visualización real, Xvfb no admite extensiones X11 modernas como la composición, Randr o GLX. Xdummy es una alternativa más nueva que admite estas extensiones y proporciona la misma funcionalidad que Xvfb".
fuente
Xdummy -h
(no hay página de manual a partir de x11vnc 0.9.13-6 en Arch Linux).