glCreateShader 上的 GLUT 分段错误

GLUT segmentation fault on glCreateShader

我正在使用 glew、glut 和 GLM 编写 C++ 程序。 当我像这样创建着色器时:

GLuint VertexShaderID = glCreateShader(GL_VERTEX_SHADER);

它说 "Segmentation fault(core dumped)"。
我的硬件是 Intel Atom CPU.
OS:OpenSuse13.2 32 位。
我需要做什么才能让它发挥作用?

您没有检查 OpenGL 扩展、版本等

GLenum err = glewInit();
if (err != GLEW_OK)
  exit(1); // or handle the error in a nicer way
if (!GLEW_VERSION_2_1)  // check that the machine supports the 2.1 API.
  exit(1); // or handle the error in a nicer way

这段代码需要在创建 OpenGL 上下文之后,但在使用任何可能不存在的函数之前发生。有关 GLEW web page

的更多详细信息