I was trying to run a C++ program which requires GLX version 1.3 to run. When I check the version of GLX after directly logging into a Fedora computer by typing glxinfo | grep "version" I get that the GLX version is 1.4. However, when I SSH into that same computer as the same user from my Windows 8 laptop with PuTTY, I get that the GLX version is 1.2 after typing the same command.

Why would the version of GLX on the Linux computer be dependent on whether or not I used SSH to log into the machine? Furthermore, is there a way I can use the GLX version 1.4 that (appears to) exists on the Fedora computer through SSH?

I have limited intuition as to the answers to the above questions, but when I asked someone else with more Linux knowledge than me, he suggested that it might have to do with some sort of configuration file being run when directly logging in that is not run when using SSH - the idea being that there might theoretically exist many versions of GLX on the computer but the version being selected is different in the two scenarios. How would I verify that this is the cause? And more importantly how would I then have the newer version selected when I use SSH?

By the way, I have X11 forwarding set up on my Windows computer (with Xming) and it is working fine, but the output of the version of GLX that is given by glxinfo | grep "version" seems to me like it would be independent of this.

Also I am not sure if it matters, but I first SSHed into a remote access server and then from there used ssh -Y to SSH into the computer which I knew had the GLX version 1.4 when logging in directly.

Thank you for your help!


glxinfo reports the capabilities of the X server pointed at by the DISPLAY variable. When you log in directly to your Fedora workstation, that’s your Fedora X server. When you log in using PuTTY with X forwarding, that’s Xming. That’s why you get different results.

The whole point is to determine the capabilities of the system that’s displaying, not those of the system where programs are running.

  • Thank you for the quick answer! This makes particular sense since when I turn off the Xming server and use glxinfo after using SSH, I get Error: unable to open display. – Grayscale May 29 '17 at 18:27
  • Also, if the output statement server glx version string: 1.2 refers to the X server, then to what does the statement client glx version string: 1.4 refer? Does the client GLX version matter? – Grayscale May 29 '17 at 18:36
  • The client GLX info shows what glxinfo is capable of, or rather, the libraries it’s linked to. GLX programs can use whatever both the server and client are capable of; in your case the client doesn’t limit anything, but in other systems it could. – Stephen Kitt May 29 '17 at 18:52
  • Makes sense. Does the client refer to my Windows computer or the Fedora workstation though? – Grayscale May 29 '17 at 18:55
  • The client is the system running glxinfo, the Fedora workstation. X terminology is confusing that way: the client is the system running the X programs (known as X clients), the server is the system displaying their output (running the X server). – Stephen Kitt May 29 '17 at 19:08

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.