Video Driver and OpenGL Troubleshooting in Linux

From Free Knowledge Base- The DUCK Project: information for everyone
Jump to: navigation, search

Identification

this command

lspci | grep VGA

more detailed w/o root

lspci -vnn | grep VGA -A 12

more detailed (requires sudo root) - this actually shows the driver being used.

sudo lshw -C video

OpenGL

Determine OpenGL version (from CLI on local machine... not remote ssh)

glxinfo | grep "OpenGL version"

To exercise use of glxinfo via ssh session to a remote machine, two things will have to be applied. Firstly, if you see the error ( Error: unable to open display ) then you did not allow x-forwarding on your ssh session. Initiate SSH like this:

ssh -X remotehost

The -X allows x-forwarding. Secondly, AND VERY IMPORTANT, executing the command now will falsely report glxinfo because it will still reference your local host even though you are at the remote CLI. Now to specify which display (the correct remote display) execute the command:

DISPLAY=:0
glxinfo | grep "OpenGL version"

glxgears is a simple utility to test 3D Acceleration (local host)

sudo apt install mesa-utils
glxgears

Why mesa-utils and what is mesa? Mesa is an open-source implementation of the OpenGL. The OpenGL libGL.so comes with your driver.

What is your video card

lspci
lspci|grep -i vga

To upgrade to a newer version of OpenGL you will have to update the graphic card driver. The graphics chip AND corresponding driver will provide higher possible OpenGL support.

You may not have the option to upgrade to a newer graphics driver. For example the Radeon HD 7560D can not be updated with a new driver other than one the distribution includes in the kernel. Radeon HD 7560D is not supported by amdgpu because it is not GCN hardware, it is supported only by the radeon driver.