我已经在谷歌上搜索过,但一直无法找到解决方案。
我想使用 GCC 编译一些 OpenGL 编程。在 GCC 的 GL 文件夹中,我有以下标题:
gl.h
glext.h
glu.h
然后在我的 system32 文件中,我有以下 .dll
opengl32.dll
glu32.dll
glut32.dll
如果我想编写一个简单的 OpenGL“Hello World”并使用 GCC 进行链接和编译,正确的过程是什么?
我正在尝试使用此代码:
#include <GL/gl.h>
#include <GL/glut.h>
void display() {
glClear(GL_COLOR_BUFFER_BIT);
glFlush();
}
int main(int argc, char **argv) {
glutInit(&argc, argv);
glutInitWindowSize(512,512);
glutInitDisplayMode(GLUT_SINGLE | GLUT_RGB);
glutCreateWindow("The glut hello world program");
glutDisplayFunc(display);
glClearColor(0.0, 0.0, 0.0, 1.0);
glutMainLoop(); // Infinite event loop
return 0;
}
我使用的是 WindowsXP 和 GCC 版本 3.4.5。预先感谢您的帮助。
最佳答案
你可能想像这样运行 gcc:
gcc -g -Wall hello_gl.c -lopengl32 -lglu32 -lfreeglut
不幸的是,GLUT 没有预装在 Windows 上。
GLUT 是一个库,负责为您创建窗口和图形上下文的(特定于平台的)工作。许多 OpenGL 示例都使用它。
official GLUT port to Win32 is available here但它有点过时了。
我建议你使用兼容的 freeglut图书馆代替。您可以使用 this tutorial for setting up freeglut with Mingw32
关于c - 在 Windows 上使用 GCC (MinGW) 编译 OpenGL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2568067/