Failed to load module "glx" (module does not exist, 0)

When I run glxgears, the system reports an error: Error: couldn’t get an RGB, Double-buffered visual.
I encounter the same issue when running glxheads and glxinfo.
I checked the Xorg.0.log and found that the glx module fails to load.

root@p3737-0000-p3701-0005:/usr/lib/xorg/modules/extensions# cat /var/log/Xorg.0.log | grep -i glx
[    10.817] (II) LoadModule: "glx"
[    10.832] (WW) Warning, couldn't open module glx
[    10.832] (EE) Failed to load module "glx" (module does not exist, 0)
[    10.873] (II) Initializing extension GLX

I don’t find libglx.so in the /usr/lib/xorg/modules/extensions/ directory; only libglxserver_nvidia.so exists in this directory.
My machine is Jetson AGX Orin.
I’m not familiar with graphics display. Can I get some help?

You have the Nvidia glx driver (libglxserver_nvidia.so). Try making a symlink to it so your X server would load it:

/usr/lib/xorg/modules/extensions/libglx.so pointing to /usr/lib/xorg/modules/extensions/libglxserver_nvidia.so

The driver doesn’t replace the X server’s libglx.so anymore, so that module should come from your distribution’s Xorg packages. libglxserver_nvidia.so is a separate file.

I’m not very familiar with the Jetson AGX Orin OS images so I’m not sure offhand how to find what package is supposed to provide that file, but I think apt-file search should be able to find it.

If the Jetson AGX Orin is using the same Ubuntu based OS image as the Jetson Nano, the libglx.so is provided by the xserver-xorg-core package.

From Xorg.0.log file on a Jetson Orin Nano:

[    23.155] (II) "glx" will be loaded by default.
[    23.155] (II) LoadModule: "glx"
[    23.156] (II) Loading /usr/lib/xorg/modules/extensions/libglx.so
[    23.183] (II) Module glx: vendor="X.Org Foundation"
[    23.267] (II) Loading sub module "glxserver_nvidia"
[    23.267] (II) LoadModule: "glxserver_nvidia"
[    23.267] (II) Loading /usr/lib/xorg/modules/extensions/libglxserver_nvidia.so
[    23.728] (II) Module glxserver_nvidia: vendor="NVIDIA Corporation"

Yes, when I use xorg’s libglx.so, the system can load it normally and the functionality is working properly. When using libglxserver_nvidia.so, according to the module loading logs, there are no errors either, but I haven’t tested whether the functionality is fully correct.

I tried creating a symbolic link from libglx.so to libglxserver_nvidia.so, and after testing, the functionality is normal—applications like glxgears run correctly. Unlike other products, on the Jetson AGX Orin, libglxserver_nvidia.so should still be able to replace Xorg’s libglx.so.

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