Opengl中的GL.lib,GLU.lib,opengl32.lib等一些基本的库和它们的动态链接库在windows系统中已经存在,所以配置主要是包括一些常用库的配备:glut,glee,glew,wgl等一些常用库。
下面先介绍GLUT库的配置:
(1)先安装好你的运行环境vs2008
(2)网上下载GLUT工具包,然后解压缩,得到包含文件,库文件,及动态链接库文件
(3)把glut.h文件拉到C:\Program Files\Microsoft SDKs\Windows\v6.0A\Include\gl文件夹下;
把glut.dll放到C:\WINDOWS\system32文件夹下;
将glut32.dll放到你安装vs2008的bin目录下,如:F:\Microsoft Visual Studio 2008\VC\bin
将glut.lib,glut32.lib放到你安装vs2008的lib目录下,如:F:\Microsoft Visual Studio 2008\VC\lib
这样就完成了glut库的环境配置。
安装测试:
#include "stdafx.h" #include <GL/glut.h> #pragma comment(lib, "opengl32.lib") #pragma comment(lib, "glu32.lib") #pragma comment(lib, "glut32.lib") 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; }
输出结果 为在一个黑色的窗口中央画一个白色的矩形。
若编译链接出现
1>test.obj : error LNK2019: 无法解析的外部符号 __imp____glutInitWithExit@12,该符号在函数 _glutInit_ATEXIT_HACK@8 中被引用
1>test.obj : error LNK2019: 无法解析的外部符号 __imp____glutCreateWindowWithExit@8,该符号在函数 _glutCreateWindow_ATEXIT_HACK@4 中被引用
1>C:\Users\Chjun\Desktop\OpenGLTest\Debug\OpenGLTest.exe : fatal error LNK1120: 2 个无法解析的外部命令
则在在#include glut.h之前加代码#define GLUT_DISABLE_ATEXIT_HACK:
#define GLUT_DISABLE_ATEXIT_HACK
#include<gl/glut.h>
或者 在工程属性->配置(设为‘所有配置’)->配置属性->C/C++->预处理器定义(添加‘GLUT_BUILDING_LIB’)。