Skip to content
Advertisement

How to know OpenGL version in Linux and install the last version [closed]

the output glxinfo | grep "OpenGL"

OpenGL core profile version string: 4.6 (Core Profile) Mesa 20.0.8
OpenGL core profile shading language version string: 4.60
OpenGL core profile context flags: (none)
OpenGL core profile profile mask: core profile
OpenGL core profile extensions:
OpenGL version string: 3.0 Mesa 20.0.8
OpenGL shading language version string: 1.30
OpenGL context flags: (none)
OpenGL extensions:
OpenGL ES profile version string: OpenGL ES 3.2 Mesa 20.0.8
OpenGL ES profile shading language version string: OpenGL ES GLSL ES 3.20
OpenGL ES profile extensions:

I don’t understand that output,
what is the version ? and what is the difference between “OpenGL Version string” and “OpenGL core profile version string”.

and what linux commands should i upgrade my OpenGL

Advertisement

Answer

To understand the output of this command, you should know that modern OpenGL implementations support multiple profiles. Each profile contains a subset of the complete OpenGL functionality. Profile can evolve through different versions.

Concretely, your system supports three profiles:

  • Core profile: this is the most modern profile for OpenGL. Applications that use this context get access to the most recent OpenGL features, but not the legacy OpenGL functionality like immediate mode (glBegin and friends). Your system has 4.6 which is the newest currently.
  • Compatibility profile: this profile still supports the legacy OpenGL functionality but also some of the newer functionality through extensions. You should not use this for new applications, only for running older applications.
  • OpenGL ES: this profile was designed for mobile systems, but is more and more being used on desktop applications as well. Consider it a small subset of OpenGL that is good for applications that do not need the full OpenGL toolkit. You have OpenGL ES 3.2 which is again the newest currently.

To summarize: your system is up to date and you should be able to create and run both modern OpenGL applications that use the core or ES profile, and legacy OpenGL applications that use the compatibility profile.

User contributions licensed under: CC BY-SA
2 People found this is helpful
Advertisement