VS2012配置Opengl以及“無法解析的外部符號 __imp____glutInitWithExit@12,該符號在函數 _glutInit_ATEXIT_HACK@8 中被引用”問題

1、配置步驟
(1)首先下載glut相關文件,下載地址:
http://download.csdn.net/detail/u013383042/9329101
(2)glut.h:頭文件,將其複製到 D:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\include\gl
(原本沒有gl文件夾,需要手動新建一個gl文件夾)
(3)glut.lib,glut32.lib:靜態鏈接庫,將其複製到 D:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\lib
(4)glut.dll,glut32.dll:動態鏈接庫,將其複製到 C:\Windows\System32,電腦系統是64位的,還需將其複製到C:\Windows\SysWOW64。

至此環境配置完成。

2、可以嘗試第一個小程序了

#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;
}

3、遇到的問題
(1)error LNK2019: 無法解析的外部符號 __imp____glutInitWithExit@12,該符號在函數 _glutInit_ATEXIT_HACK@8 中被引用
(2)error LNK2019: 無法解析的外部符號 __imp____glutCreateWindowWithExit@8,該符號在函數 _glutCreateWindow_ATEXIT_HACK@4 中被引用

效果展示:
這裏寫圖片描述
4、解決方法

#include <GL/glut.h>前面加上了一句:  
#define GLUT_DISABLE_ATEXIT_HACK 
(!!!注意,是前面!!!)

這裏寫圖片描述

運行結果:
這裏寫圖片描述

至此,問題迎刃而解!

原創:http://blog.csdn.net/u013383042/article/details/52024527

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