 <p>I'm pretty sure the problem is calling 'glGetString(GL_EXTENSIONS)' which has been deprecated in OpenGL 3.0 and removed in core profile 3.1. The correct approach is to (<a href="http://www.opengl.org/discussion_boards/showthread.php/165539-GL_EXTENSIONS-replacement">From OpenGL Forum</a>):</p> <pre><code>GLint n, i; glGetIntegerv(GL_NUM_EXTENSIONS, &amp;n); for (i = 0; i &lt; n; i++) { printf("%s\n", glGetStringi(GL_EXTENSIONS, i); } </code></pre>