没有“ glu.h”和“ windows.h”,GLFW无法编译

时间:2018-10-31 02:21:31

标签: c++ opengl graphics game-engine glfw

我想创建一个游戏引擎,但是如果没有<GL/glu.h><windows.h>,我的图形子系统将无法编译。

  1. 仅使用Graphics.cpp编译<GLFW/glfw3.h>而不同时使用两个标头将在Graphics.cpp'gluErrorString' was not declared in this scope上打印错误。
  2. 使用Graphics.cpp和''编译<GLFW/glfw3.h>,不使用<windows.h>将在glu.hc:\mingw\include\gl\glu.h|225|error: 'WINGDIAPI' does not name a type上打印错误。我发现一些解决方法是在<windows.h>中也包含Graphics.cpp
  3. 使用Graphics.cpp AND''AND <GLFW/glfw3.h>编译<windows.h>不会返回错误。问题在于该程序不是跨平台的,不是吗?

Including the GLFW header file部分GLFW build guide中所述;一个不需要包含windows.h和OpenGL头文件,因为GLFW头已经包含了这些文件。因此,我试图遵循指南或最佳实践,并试图使我的游戏引擎跨平台。

以下是我在CodeBlock中的链接器选项,

-lglfw3
-lOpenGL32
-lglu32
-lgdi32

1 个答案:

答案 0 :(得分:0)

结果证明,我只需要在GLFW_INCLUDE_GLU部分的CodeBlock的编译器设置中编写#defines

来源:Building GLFW program, by Sugih Jamin