步骤如下:
1)在windows上安装MinGW :http://www.mingw.org。
2)要使用glut的话需要自己进行安装,http://user.xmission.com/~nate/glut.html下载bin版本即可。
3)解压后将glut.h放入 MinGW\include\GL,dll文件放入windows\system32,下载http://sourceforge.net/projects/mingw/files/MinGW/Extension/mingw-utils/mingw-utils-0.3/,注意0.4版本的目前会出现问题,不要下错了。解压后将bin目录下所有文件放入MinGW\msys\1.0\bin目录。
4)在解压的glut目录中执行reimp glut32.lib,如果不出错就生成了libglut32.a,将此文件放入MinGW\lib。
5)开发个c++工程测试代码如下
#include<iostream>
#include<GL/gl.h>
#include<GL/glu.h>
#include<GL/glext.h>
#include<GL/glut.h>
usingnamespace std;
voiddisplay(void) {
glClear(GL_COLOR_BUFFER_BIT);/* clear allpixels */
glColor3f(1.0, 1.0, 1.0);
glBegin(GL_POLYGON);/* draw white polygon with cornersat(0.25, 0.25, 0.0) and (0.75, 0.75, 0.0)*/
glVertex3f(0.25, 0.25, 0.0);
glVertex3f(0.75, 0.25, 0.0);
glVertex3f(0.75, 0.75, 0.0);
glVertex3f(0.25, 0.75, 0.0);
glEnd();
glFlush();/* start processing buffered OpenGLroutines */
}
voidinit(void) {
glClearColor(0.0, 0.0, 0.0, 0.0);/* select clearingcolor */
glMatrixMode(GL_PROJECTION);
glLoadIdentity();
glOrtho(0.0, 1.0, 0.0, 1.0, -1.0, 1.0);/* initializeviewing values */
}
intmain(int argc,char** argv) {
cout << "print GL_POLYGON" << endl;
glutInit(&argc, argv);
glutInitDisplayMode(GLUT_SINGLE | GLUT_RGB);/*Declare initialdisplay mode(single buffer and RGBA).*/
glutInitWindowSize(250, 250);/*Declare initial window size.*/
glutInitWindowPosition(100, 100);/*Declare initial windowposition.*/
glutCreateWindow("hello");/*Open window with "hello"in its title bar.*/
init();/*Call initialization routines.*/
glutDisplayFunc(display);/*Register callbackfunction to display graphics.*/
glutMainLoop();/*Enter main loop and process events.*/
cout << "print GL_POLYGON over" << endl;
return 0;/* ANSI C requires main to return int.*/
}
6)编译和链接命令如下,注意也可以用IDE的参数配置或makefile:
g++ -O0 -g -Wall -c -v -o"src\\testglut.o" "..\\src\\testglut.cpp"
g++ -o testglut.exe"src\\testglut.o" -lopengl32 -lglaux -lglu32 -lglut32
运行即可
7)如果提示找不到glut32.dll,则将文件拷贝至和编译好的exe同一文件夹即可。
===============================
更简单的方法二
===============================
1 glut32.lib 直接改名成libglut32.a放到 mingw/lib下
2 g++ -o testglut.exe"src\\testglut.o" -lopengl32 -lglut32
2 glut32.dll放到和 testglut.exe 同目录
~end~