我正在阅读“OpenGL入门”教程,我看到了这个文本:
“如果你正在使用C / C ++,那么你必须首先建立一个可以链接到OpenGL的构建环境(Visual Studio项目,GNU makefile,CMake文件等)。在Windows下,你需要静态链接到一个库名为OpenGL32.lib(请注意,如果您正在构建一个64位可执行文件,您仍然可以链接到OpenGL32.lib。“32”部分是没有意义的。)Visual Studio和大多数Windows编译器都附带了这个库。“< / p>
我只是想用vim编写我的源文件,我不想使用像VS这样的IDE,而且据我所知,OpenGL库附带了Windows 7(如果我错了,请纠正我)。在此之后,本文并未真正详细介绍如何包含OpenGL库,我真正的问题是,如何在源文件中包含和使用OpenGL库?
是否像编写#include <name of lib>
一样简单,还是需要在编程环境中执行其他操作,例如编辑路径变量?
编辑:我正在使用MinGW g ++ / gcc编译器
答案 0 :(得分:7)
要访问包含文件,您需要一个特殊的支持库。这些不止一个,但我会推荐GLEW。您可以在http://glew.sourceforge.net/找到GLEW界面。
原因是在Windows上只有非常旧版本的OpenGL标头可用作默认设置。更新的界面是间接可用的;你必须要求功能地址。然而,这是由GLEW为您完成的。
所以你只需要包含&lt; GL / glew.h&gt;,并使用glewInit();
进行一些初始化这与Linux和Windows兼容,尤其是在使用MinGW时。链接时,我使用以下内容:
MY_LIBS = -lglew32 -lopengl32 -lWs2_32 -lole32 -lctctl32 -lgdi32 -lcomdlg32 -luuid
我可以推荐使用通用的makefile,请参阅http://sourceforge.net/projects/gcmakefile/
请注意,在初始化GLEW之前,您还必须为OpenGL设置context。根据环境的不同,这样做会有所不同。它是在你打开一个窗口时完成的。对于便携式库,我可以推荐glfw库或freeglut。