Codeblocks下的OpenGL配置

(1)下載codeblocks,最好是帶mingw的版本,不然則要自己配置mingw;

(2)下載GLUT bin文件,最好在OpenGL官網上下載最新版本,解壓. 
將glut32.dll複製到C:\windows\system目錄; 
將glut32.lib複製到mingw\lib目錄; 
將glut.h複製到mingw\include\GL目錄; 
mingw爲你的mingw目錄,如果是codeblocks自帶的,則在codeblocks安裝目錄下;

(3)新建一個空工程 empty project;

(4)配置工程,右鍵單擊新建的工程,打開Build Options->Linker Settings,在Link libraries中添加MinGW\lib\glut32.lib,MinGW\lib\libopengl32.a,MinGW\lib\libglu32.a,點擊OK;

(5)在工程中新建test.c測試文件,代碼如下:

#include <GL/gl.h>
#include <GL/glut.h>

void myDisplay(void)
{
 glClear(GL_COLOR_BUFFER_BIT);
 glRectf(-0.5f, -0.5f, 0.5f, 0.5f);
 glFlush();
}

int main(int argc, char *argv[])
{
 glutInit(&argc, argv);
 glutInitDisplayMode(GLUT_RGB | GLUT_SINGLE);
 glutInitWindowPosition(100, 100);
 glutInitWindowSize(400, 400);
 glutCreateWindow("第一個opengl程序");
  glutDisplayFunc(&myDisplay);
 glutMainLoop();
 return 0;
}

(5)遇到的問題,如下


即   某文件 undefined reference to '__某OpenGL函數名'

解決如下:

在包含OpenGL的include預編譯指令前增加 #define _STDCALL_SUPPORTED 就成功了,也許別人的還不行,爲了保險,你可以寫上:
  1. #define _STDCALL_SUPPORTED  
  2. #define _M_IX86  
  3. #define GLUT_DISABLE_ATEXIT_HACK  
  4. #define GLUT_NO_WARNING_DISABLE

(6)編譯運行程序,效果如下:

這裏寫圖片描述


參考博文:https://blog.csdn.net/sunny_xsc1994/article/details/44300771

https://blog.csdn.net/sophiale07/article/details/44965875

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章