Включить библиотеки OpenGL в C ++, Windows 7

Я читаю учебник «Начало работы с OpenGL» и наткнулся на этот текст:

«Если вы используете C / C ++, то сначала вы должны настроить среду сборки (проект Visual Studio, файл сборки GNU, файл CMake и т. Д.), Которая может ссылаться на OpenGL. В Windows вам необходимо статически связать библиотеку с именем OpenGL32. .lib (обратите внимание, что вы все еще ссылаетесь на OpenGL32.lib, если вы создаете 64-битный исполняемый файл. Часть «32» не имеет смысла). Visual Studio и большинство компиляторов Windows поставляются с этой библиотекой ».

Я просто пытаюсь написать свои исходные файлы, используя vim, я не хочу использовать IDE, такую ​​как VS, и из моего понимания библиотеки OpenGL поставляются с Windows 7 (поправьте меня, если я ошибаюсь). После этого в статье больше не говорится о том, как включать библиотеки OpenGL, и мой реальный вопрос: как мне включить и использовать библиотеки OpenGL в моих исходных файлах?

Это так же просто, как писать #include <name of lib> или мне нужно сделать что-то еще с моей средой программирования, как редактирование переменных пути?

Изменить: я использую MinGW g ++ / gcc компилятор

9

Решение

Чтобы получить доступ к включаемым файлам, вам нужна специальная библиотека поддержки. Их более одного, но я бы порекомендовал GLEW. Вы можете найти интерфейс GLEW на http://glew.sourceforge.net/.

Причина этого заключается в том, что в Windows по умолчанию доступны только очень старые версии заголовков OpenGL. Более новый интерфейс доступен косвенно; Вы должны попросить адреса функций. Однако это сделано GLEW для вас.

Так что вам нужно только включить < GL / glew.h> и выполнить некоторую инициализацию с помощью glewInit ();

Это совместимо с Linux и Windows, особенно если вы используете MinGW. При связывании я использую следующее:

MY_LIBS =
-lglew32
-lopengl32
-lWs2_32 -lole32 -lcomctl32 -lgdi32 -lcomdlg32 -luuid

Я могу порекомендовать использовать общий make-файл, см. http://sourceforge.net/projects/gcmakefile/

Обратите внимание, что вы также должны настроить контекст для OpenGL, до инициализации GLEW. Это делается по-разному в зависимости от окружающей среды. Это делается, когда вы открываете окно. Для переносимых библиотек я могу порекомендовать glfw библиотека или freeglut.

7

Другие решения

Других решений пока нет …