I recently bought a laptop with a i5-2520M cpu in it that uses the integrated graphics. Intel's ark says that this cpu has an Intel HD Graphics 3000. Wikipedia's relevant page says that this iGPU supports OpenGl 3.3 on Linux. The source cited by Wikipedia for this claim, a Phoronix article, says the following:
Posted on Friday evening was a patch to enable OpenGL 3.3 and OpenGL Shading Language (GLSL) 3.30 for Intel "Gen6" Sandy Bridge hardware with Mesa
This all makes me think that any OpenGl program that uses OpenGl 3.3 and GLSL 3.3 core profile should work. When I attempt to run, on Arch Linux, such a program, that I wrote, however, the opengl driver tells the program that GLSL 3.3 is not supported (even though OpenGl 3.3 is, which is a weird combination, because normally these things come together). The exact same source code when compiled on my other computer with a GTX 1070 in it runs without issue. I have the mesa package installed, and the wiki says that that is the only neccessary package. Programs such as glxgears that depend on an older version of opengl work fine. Even the heaven benchmark works, albeit with < 10 fps. This installation is on a Thinkpad T420.
How can I get GLSL 3.3 support on my Intel HD Graphics 3000?
Glxinfo: https://pastebin.com/C87JqMwV
glxinfo
output claims that you do have GLSL 3.3: “OpenGL core profile shading language version string: 3.30”.glGetShaderInfoLog
. This shows that for some reason I can't access GLSL 3.3.