Использование GCC (MinGW) для компиляции OpenGL в Windows - PullRequest
2 голосов
/ 02 апреля 2010

Я искал в Google и не смог найти решение.

Я хотел бы скомпилировать некоторые программы OpenGL, используя GCC. В папке GL в GCC у меня есть следующие заголовки:

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. Заранее благодарю за помощь.

1 Ответ

7 голосов
/ 02 апреля 2010

Вы, вероятно, хотите запустить gcc следующим образом:

gcc -g -Wall hello_gl.c -lopengl32 -lglu32 -lfreeglut

К сожалению, GLUT не предустановлен в Windows.

GLUT - библиотека, которая заботится о (для конкретной платформы) работе по созданию окна и графического контекста для вас. Многие образцы OpenGL используют его.

Официальный порт GLUT для Win32 доступен здесь , но немного устарел.

Я предлагаю вам вместо этого использовать совместимую библиотеку freeglut . Вы можете использовать этот урок для настройки freeglut с Mingw32

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...