libGL error: No matching fbConfigs or visuals found (no NVIDIA/GPU) from XQuartz

I don't have a NVIDIA/GPU hardware in my Manjaro box. (this is an old PC hardware)

AFAIK it is possible to render graphics using opengl without actually having an opengl compatible gpu and one can use MESA which implements the opengl functions entirely inside software.

I'm using a custom xorg.conf config for dummy video driver in a Manjaro installation (called myhost here) without monitor attached. I've also enabled iglx in the xorg.conf file as Indirect GLX was disabled by default in Xorg 1.17, starting from XQuartz version 2.7.9, then to enable indirect GLX and to allow remote visualization in my MacOS I executed:

$ defaults write org.macosforge.xquartz.X11 enable_iglx true

and in the myhost Manjaro xorg.conf file:

Section "ServerFlags"  
    Option "AllowIndirectGLX" "on"  
    Option "IndirectGLX" "on"  
EndSection

I intend to run X programs remotely through XQuartz (or other X server for that matter). Simple programs like xclock work. But others like Retroarch fails with the libGL error.

I've stopped the running Xorg and launched a new instance with the new config:

$ Xorg -config xorg.conf.dummy-video-driver

I launched XQuartz and entered in the Terminal:

ssh -X myhost

Now inside myhost using the XQuartz terminal:

$ export LIBGL_DEBUG=verbose
$ glxinfo
name of display: localhost:10.0
libGL: Can't open configuration file /etc/drirc: No such file or directory.
libGL: Can't open configuration file /home/myuser/.drirc: No such file or directory.
libGL: Can't open configuration file /etc/drirc: No such file or directory.
libGL: Can't open configuration file /home/myuser/.drirc: No such file or directory.
libGL error: No matching fbConfigs or visuals found
libGL error: failed to load driver: swrast
X Error of failed request:  GLXBadContext
  Major opcode of failed request:  149 (GLX)
  Minor opcode of failed request:  6 (X_GLXIsDirect)
  Serial number of failed request:  31
  Current serial number in output stream:  30

I have the following packages installed:

$ pamac list | egrep "mesa|glu"
freeglut                          3.2.1-1                     extra      405,5 kB
glu                               9.0.1-1                     extra      502,8 kB
glusterfs                         1:7.4-1                     community  19,7 MB
lib32-freeglut                    3.2.1-1                     multilib   314,4 kB
lib32-glu                         9.0.1-1                     multilib   510,0 kB
lib32-mesa                        20.0.4-2                    multilib   70,9 MB
lib32-mesa-demos                  8.4.0-1                     multilib   540,7 kB
lib32-mesa-vdpau                  20.0.4-2                    multilib   9,9 MB
libgssglue                        0.4-4                       core       81,6 kB
libva-mesa-driver                 20.0.4-2                    extra      9,1 MB
mesa                              20.0.4-2                    extra      90,5 MB
mesa-demos                        8.4.0-3                     extra      8,1 MB
mesa-vdpau                        20.0.4-2                    extra      9,4 MB

and swrast is installed:

$ locate swrast
/usr/lib/dri/kms_swrast_dri.so
/usr/lib/dri/swrast_dri.so
/usr/lib32/dri/kms_swrast_dri.so
/usr/lib32/dri/swrast_dri.so

Hardware details:

$ inxi -G --display
Graphics:  Device-1: Intel 82G33/G31 Express Integrated Graphics driver: i915 v: kernel 
           Display: server: X.Org 1.20.8 driver: none resolution: 3440x1440~20Hz 
           OpenGL: renderer: llvmpipe (LLVM 10.0.0 128 bits) v: 3.3 Mesa 20.0.4

And display controller details:

$ lshw -numeric -C display
  *-display                 
       description: VGA compatible controller
       product: 82G33/G31 Express Integrated Graphics Controller [8086:29C2]
       vendor: Intel Corporation [8086]
       physical id: 2
       bus info: pci@0000:00:02.0
       version: 10
       width: 32 bits
       clock: 33MHz
       capabilities: msi pm vga_controller bus_master cap_list rom
       configuration: driver=i915 latency=0
       resources: irq:16 memory:fea80000-feafffff ioport:dc00(size=8) memory:e0000000-efffffff memory:fe900000-fe9fffff memory:c0000-dffff

At this point I don't understand if I'm missing a libgl1 mesa glx package in Manjaro or if I need another X Server with the GLX extension:

$ Xvfb +extension GLX
[mi] Extension "GLX" is not recognized
[mi] Only the following extensions can be run-time enabled:
[mi]    Generic Events
[mi]    Composite
[mi]    DAMAGE
[mi]    DOUBLE-BUFFER
[mi]    DPMS
[mi]    MIT-SCREEN-SAVER
[mi]    MIT-SHM
[mi]    RANDR
[mi]    RENDER
[mi]    X-Resource
[mi]    XFIXES
[mi]    XINERAMA
[mi]    XTEST
[mi]    XVideo
(EE) 
Fatal server error:
(EE) Server is already active for display 0
        If this server is no longer running, remove /tmp/.X0-lock
        and start again.
(EE)

I also tried to configure MESA drivers for my graphic card with adriconf but the same libGL error appears.

Any hints or ideas would be greatly appreciated.

boot on USB Iso manjaro
and returns

inxi -Fxxxza

Hi Stephane, I posted this some hours ago: Dump your "inxi -Fxxxza --no-host" here and bookmark it

I don't have a Manjaro ISO, just installed form network. Is it really necessary to boot from USB ISO? How does the inxi command would help?

is a very old and limited graphic hardware

I know, and I already wrote that in the first line of the post. However, MESA implements the OpenGL functions entirely inside software.

Maybe someone has a clue?

This topic was automatically closed 90 days after the last reply. New replies are no longer allowed.

Forum kindly sponsored by