I am trying to develop C/C++ applications using OpenGL. Unfortunately, I have been unable to access any functionality past OpenGL 3.0. I have Mesa version 18.0.5, Linux Mint 18 64-bit, the 4.18.1 Kernel, and Intel Integrated Graphics.
~ $ lspci | grep VGA 00:02.0 VGA compatible controller: Intel Corporation Broadwell-U Integrated Graphics (rev 09) ~ $ glxinfo | grep OpenGL OpenGL vendor string: Intel Open Source Technology Center OpenGL renderer string: Mesa DRI Intel(R) HD Graphics 5500 (Broadwell GT2) OpenGL core profile version string: 4.5 (Core Profile) Mesa 18.0.5 OpenGL core profile shading language version string: 4.50 OpenGL core profile context flags: (none) OpenGL core profile profile mask: core profile OpenGL core profile extensions: OpenGL version string: 3.0 Mesa 18.0.5 OpenGL shading language version string: 1.30 OpenGL context flags: (none) OpenGL extensions: OpenGL ES profile version string: OpenGL ES 3.1 Mesa 18.0.5 OpenGL ES profile shading language version string: OpenGL ES GLSL ES 3.10 OpenGL ES profile extensions:
I am certain that my hardware supports up to OpenGL 4.4, as this machine was previously a Windows 10 machine before MS pushed/forced a broken update, and I developed using OpenGL 4.4 and GLSL 440 during that time.
Additionally, I can run OpenGL 4.4 programs on Java through JOGL, which has all the required OpenGL libraries packaged together and doesn't seem to rely on the system version at all.
So basically, why does Mesa say that the core version is 4.5, but then gives the version string of 3.0? (The same version glGetString(GL_VERSION) returns.) And how can I regain access to OpenGL 4.4? (If not 4.5!)