Terminal command to show OpenGL version?
Solution 1
To Check OpenGL Version,
glxinfo | grep "OpenGL version"
You will get the output as follows,
glxinfo | grep "OpenGL version"
OpenGL version string: 1.4 (2.1 Mesa 7.7.1)
Edit:
You may have better luck with modern OpenGL just grepping for "version" instead of "OpenGL version" given the differences between the core and compat profiles, as well as the various GLSL and GLES versions:
glxinfo | grep 'version'
server glx version string: 1.4
client glx version string: 1.4
GLX version: 1.4
Max core profile version: 4.1
Max compat profile version: 3.0
Max GLES1 profile version: 1.1
Max GLES[23] profile version: 3.0
OpenGL core profile version string: 4.1 (Core Profile) Mesa 11.1.2
OpenGL core profile shading language version string: 4.10
OpenGL version string: 3.0 Mesa 11.1.2
OpenGL shading language version string: 1.30
OpenGL ES profile version string: OpenGL ES 3.0 Mesa 11.1.2
OpenGL ES profile shading language version string: OpenGL ES GLSL ES 3.00
Notice that the actual version is presented by the "core profile version" (4.1), whereas the "OpenGL version" is presented as 3.0.
Solution 2
depending on what you're looking for:
Open GL Implementation
You can use glxinfo, from the mesa-utils package:
sudo apt-get install mesa-utils
glxinfo | grep "OpenGL version"
Development Libraries
this depends a little,
dpkg -s [package name]
will tell you version information, etc. of any package.
but you'll need to know what specific part/implementation, etc. of opengl you're interested in. i suspect, for you, it'll be:
dpkg -s libglu1-mesa
Solution 3
Note: I've added this answer at a later date, because none of the existing answers address a crucial aspects regarding ssh, and will give misleading values to those who follow the above instructions.
Use X-forwarding when ssh-ing. This is enabled with
ssh -X
.Without x-forwarding:
$ ssh MYCOMP $ glxinfo Error: unable to open display
With x-forwarding:
$ ssh -X MYCOMP $ glxinfo | grep -i opengl OpenGL vendor string: NVIDIA Corporation OpenGL renderer string: GeForce 8800 GT/PCIe/SSE2 OpenGL version string: 2.1.2 NVIDIA 310.44 OpenGL shading language version string: 1.20 NVIDIA via Cg compiler OpenGL extensions:
I should note here that this is both the wrong graphics card, and wrong version numbers. ('Wrong' in terms of what you would expect).
Set
DISPLAY
variable to:0
, to allow access to the graphic card's driver from the remote session.$ ssh -X MYCOMP $ DISPLAY=:0 $ glxinfo | grep -i opengl OpenGL vendor string: NVIDIA Corporation OpenGL renderer string: GeForce GTX 550 Ti/PCIe/SSE2 OpenGL version string: 4.3.0 NVIDIA 310.14 OpenGL shading language version string: 4.30 NVIDIA via Cg compiler OpenGL extensions:
This lists the correct graphics card (the one on the remote computer), as well as the correct version numbers.
Solution 4
For those who only want the version number, for example to give it in argument of a program, you can use
$ glxinfo | awk '/OpenGL version/ {print $4}'
3.0
Note: optirun glxinfo | awk '/OpenGL version/ {print $4}'
if you are using bumblebee
Solution 5
You can get the information by running following command:
DISPLAY=:0 glxgears -info | grep GL_VERSION
This echos something like:
GL_VERSION = 3.3.0 NVIDIA 340.93
Also try without DISPLAY=:0
in case of problems. The command glxgears
is in mesa-utils
package which can be installed with:
sudo apt-get install mesa-utils
Related videos on Youtube
Dhinesh.B
Build a better Stack Exchange: Codidact All code I publish on Stack Overflow and other sites of the Stack Exchange network shall be licensed under the BSD 2-Clause License: Copyright Matthias Braun All rights reserved. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
Updated on September 18, 2022Comments
-
Dhinesh.B almost 2 years
I want to find out the OpenGL version I'm using. I have access to Ubuntu via SSH. Which command shall I execute?
-
Engineer about 9 yearsAnd if you're getting the right card but wrong OpenGL version, it's probably the nouveau / open source drivers -- either blacklist them or uninstall them.
-
Taywee over 8 yearsI've made some edits so that better information can be found with modern OpenGL versions that present multiple profiles, especially given that this is the top result on a google search for "Linux check opengl version".
-
JustWe about 7 yearsThis work for me. Freescale iMX6 Yocto poky 1.6.2.
-
phil294 about 7 yearsFor me, it was
localhost:10.0
, unfortunately resulting inX Error of failed request: GLXBadContext
. -
starleaf1 almost 7 yearsNote: In Ubuntu 16.04,
glxinfo
is not available by default. To be able to use it, you need to installmesa-utils
package. -
Nathan almost 5 years@Rich Is there an easy way to find what version the remote is using?
-
Rich almost 5 years@frank Look at the answer below, by thomasmichaelwallace in the Development Libraries section. When you run an openGL client on a remote machine, the remote client uses the remote libraries, but displays onto your server, so it's a bit confusing at times
-
WiR3D about 4 yearseven works with the Secure Shell App Chrome Extension (term) and from 18.04 on X to 20.04 on Wayland
-
Adam Stewart over 3 yearsWhat about OpenGLU? Is there a way to get that version number from glxinfo?