前言
目前现在openGL流行的库是glfw、glew、freetype基本上就能实现一般图形图像渲染,但是我们经常会看到openGL的一些老代码,经常包含gl.h/glu.h/glaux.h/glut.h这些头文件

如果我们无脑包含,会发现编译器报一大堆错误:大概分了这样几类错误
(1)

(2)
(3)
![]()
(4)
(5)

(6)

原因
gl.h/glu.h/glaux.h/glut.h这几个文件相互重复包含引起的
解决
去掉gl.h/glu.h/这两个头文件,只包含glaux.h/glut.h,就可以,另外还要注意包含顺序
如果是
#include "GL/glut.h"
#include "GL/GLAUX.H"
则会报错

正确的包含顺序

OpenGL编程:解决gl.h/glu.h/glaux.h/glut.h头文件冲突问题
在使用OpenGL进行图形图像渲染时,旧代码常包含gl.h/glu.h/glaux.h/glut.h头文件,导致编译错误。错误主要由头文件重复包含引起。为解决此问题,只需保留glaux.h和glut.h,注意包含顺序,如先包含glut.h再包含GLAUX.H会导致错误。正确做法是单独包含glaux.h和glut.h,避免冲突。

2099

被折叠的 条评论
为什么被折叠?



