Windows
В Windows необходимо включить заголовок gl.h
для поддержки OpenGL 1.1 и ссылку на OpenGL32.lib.Оба являются частью Windows SDK .Кроме того, вам могут потребоваться следующие заголовки, которые вы можете получить из http://www.opengl.org/registry.
<GL/glext.h>
- профиль совместимости OpenGL 1.2 и выше и интерфейсы расширений.. <GL/glcorearb.h>
- Профиль ядра OpenGL и интерфейсы расширений ARB, как описано в приложении G.2 спецификации OpenGL 4.3.Не включает интерфейсы, найденные только в профиле совместимости. <GL/glxext.h>
- API-интерфейсы расширения GLX 1.3 и выше и выше. <GL/wglext.h>
- Интерфейсы расширения WGL.
Linux
В Linux вам нужно создать ссылку на libGL.so, который обычно является символической ссылкой на libGL.so.1, которая покасимволическая ссылка на фактическую библиотеку / драйвер, который является частью вашего графического драйвера.Например, в моей системе фактическая библиотека драйверов называется libGL.so.256.53, которая является номером версии используемого драйвера nvidia.Вам также необходимо включить заголовок gl.h
, который обычно является частью пакета Mesa или Xorg.Опять же, вам может понадобиться glext.h
и glxext.h
из http://www.opengl.org/registry.glxext.h
содержит расширения GLX, эквивалентные wglext.h
в Windows.
Если вы хотите использовать функциональность OpenGL 3.x или OpenGL 4.x без функциональности, которая была перемещена в расширение GL_ARB_compatibility
,используйте новый заголовок gl3.h
с веб-страницы реестра.Он заменяет gl.h
, а также glext.h
(если вам нужна только базовая функциональность).
Последнее, но не менее важное, glaux.h
не является заголовком, связанным с OpenGL.Я предполагаю, что вы прочитали ужасные уроки NEHE и просто согласились с этим.Glaux - ужасно устаревшая библиотека Win32 (1996) для загрузки несжатых растровых изображений.Используйте что-нибудь получше, например libPNG, который также поддерживает альфа-каналы.