步骤如下:
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~