dev c++ 配置openGL
阿新 • • 發佈:2018-12-21
折騰了一早上,總算成功了,親測有效,參考了很多部落格,但是都不完整,現把解決方案分享如下:
WINDOWS配置:
確保你的WINDOWS/SYSTEM32檔案下有如下檔案:
glu32.dll, glut32.dll, glut.dll, opengl32.dll
如果是64位作業系統SysWOW64中加入glut32.dll(如果還不行就把上述檔案都拷貝到SysWOW64中,本人在實際操作過程中只缺少glut32.dll),否則會報錯.
DEV C++庫的配置:
確保DEV C++安裝目錄下的Lib(不是lib32)檔案中有如下檔案l,ib資料夾正常是在MinGW64\x86_64-w64-mingw32目錄下
libglu32.a, libglut32.a, libglut.a, libopengl.a(如果已經有libopengl32.a也闊以)
其次確保inlude\GL檔案中又如下標頭檔案:
gl.h, glu.h, glut.h,
DEV C++檔案工程的屬性設定:
右鍵單擊工程,彈出選單,點選工程屬性,然後再彈出的表格中選擇引數項,右邊的聯結器中輸入:
-lglut32
-lglu32
-lopengl32
-lwinmm
-lgdi32
最最最大的坑——如果你用的是64位編譯器,要把編譯器改為32位的,方法就是右鍵專案名——>projection options——>complier,然後選擇32位的
以下程式供大家測試:
#define GLUT_DISABLE_ATEXIT_HACK #include<windows.h> #include<gl/gl.h> #include<gl/glut.h> void Initial(){ glClearColor(1.0f,1.0f,1.0f,1.0f); glMatrixMode(GL_PROJECTION); gluOrtho2D(0.0,200.0,0.0,150.0); } void Display(){ glClear(GL_COLOR_BUFFER_BIT); glColor3f(1.0f,0.0f,0.0f); glRectf(50.0f,100.0f,150.0f,50.0f); glFlush(); } int main(int argc,char *argv[]){ glutInit(&argc,argv); glutInitDisplayMode(GLUT_SINGLE | GLUT_RGB); glutInitWindowSize(400,300); glutInitWindowPosition(100,120); glutCreateWindow("矩形"); glutDisplayFunc(Display); Initial(); glutMainLoop(); return 0; }
執行結果為:
注意:一定要在標頭檔案那裡新增
不然會報錯