我假设你的意思是教程 1:打开窗口 http://www.opengl-tutorial.org/beginners-tutorials/tutorial-1-opening-a-window/并使用 Netbeans 的内置构建系统而不是 CMake。
包含头文件的顺序很重要(source http://www.glfw.org/faq.html#215__can_i_use_glew_with_glfw)。试试这样:
#include <windef.h> // According to comments above
#include <GL/glew.h> // Before any gl headers
#include <GL/gl.h>
//#include <GL/glext.h> // Linux headers
//#include <GL/wglext.h> // Windows headers - Not sure which ones cygwin needs. Just try it
#include <GL/glu.h> // Always after gl.h
#include <GL/glfw.h> // When all gl-headers have been included
在项目目录中创建一个名为“include”的目录,并包含一个子文件夹“GL”。
从以下位置获取二进制文件(32 位,MinGW)GLFW 下载网站 http://www.glfw.org/download.html并将 .dll/.so 放入您的构建文件夹中(或将它们提取到某个位置并将它们添加到搜索目录中),并将头文件放入“include/GL”中。
另外,教程中的 glfw 代码有点过时了;它不再适用于 glfw3。
您必须使用 GLFW 来更新它转换指南 http://www.glfw.org/docs/3.0/moving.html/try 这个版本 http://pastebin.com/fG711uMv(我无法测试,因为我目前不在家)或使用 glfw2。
最后下载了GLEW 来源 http://glew.sourceforge.net/并按照 README.txt 中的说明构建它。将 .dll/.so 放入构建文件夹(或添加到搜索目录),并将头文件放入“include/GL”。
将以下内容添加到您的编译器标志中:
-Iinclude/
最后将以下参数添加到您的链接器中:
-L/lib -lglu32 -lopengl32 -lGL -lGLU -lglfw -lglew
您现在应该能够编译本教程了。
编辑:添加了构建 GLEW、GLFW 的说明,并完成了我的答案,包括从头开始构建所有内容。
Edit2:教程代码的链接 glfw3 版本。
Edit3:添加了缺少的链接器选项。