0
我正在编写一个OpenGL程序,我正在编译通过MinGW。我已经成功地将OpenGL,GLUT,GLFW和GLM链接到我的main.cpp文件。鉴于以下标题:使用MinGW编译时链接GLEW库
#include "GL/glut.h"
#include "GLFW/glfw3.h"
#include "GL/glew.h"
#include "glm/vec3.hpp"
而下面的CMD线:
g++ -o leaf.exe -Wall physics.cpp -mwindows lib/glut32.lib -lopengl32 -lglu32 -lglfw3dll -lglew32 -IC:/MinGW/include/GL
我设法得到它编译成功。然而,放置在.a文件中的MinGW/lib下,在源文件夹中的.dll文件和在C h文件:\ MinGW的\ include和添加
#include "GL/glew.h"
用下面的命令行
g++ -o leaf.exe -Wall physics.cpp -mwindows lib/glut32.lib -lopengl32 -lglu32 -lglfw3dll -lglew32 -IC:/MinGW/include/GL
然后我得到的错误,包括一个长长的清单:
In file included from physics.cpp:6:0:
c:\mingw\include\gl\glew.h:85:2: error: #error gl.h included before glew.h
#error gl.h included before glew.h
In file included from physics.cpp:6:0:
c:\mingw\include\gl\glew.h:1814:94: error: 'GLchar' does not name a type
typedef void (GLAPIENTRY * PFNGLBINDATTRIBLOCATIONPROC) (GLuint program, GLuint index, const GLchar* name);
我的第一次尝试,使一些没有使用Visual Studio或者Eclipse。尝试了很多我在这里找到的修复,但没有具体。
感谢您的阅读!
完美!谢谢,请问为什么订单很重要?只是让我更了解它! 我在网上学习了一个教程,并且一直在使用GLUT进行一些以前的项目,并且认为它们都使用它们,但是如果它们不在一起,我会尝试和我正在阅读的教程一起学习GLEW :) 再次感谢! –
检查GLEW.h,在那里有一行检查GL.h是否已被包含,如果是,则触发#error。 – Shokwav