系统:Win7 64位
MinGW离线安装,两种资源:
- http://nuwen.net/mingw.html
- http://tdm-gcc.tdragon.net/
自带了OpenGL的库文件
FreeGLUT(实用工具库,主要是方便建立视窗和交互)
预编译版本:http://www.transmissionzero.co.uk/software/freeglut-devel/
选择下载 Download freeglut 3.0.0 for MinGW
动态库Dll 和 编译链接时需要的lib都已经在里面了。
解压的文件位置(示例):D:\OGL\freeglut-MinGW-3.0.0-1.mp手动编译
从官网下载 freeglut-3.0.0.tar.gz ,解压,示例目录 D:\OGL\freeglut-3.0.0,命令行进入该目录
执行:cmake -G"MinGW Makefiles" .
注意MinGW Makefiles的大小写不能错,然后,
执行:make
中断,提示 permission denied, 使用Administrator权限进入该目录,执行
set path=%path%;c:\mingw\bin
make
没有错误提示,生成示例程序位于 D:\OGL\freeglut-3.0.0\bin 目录
=== 如果只是编译运行简单的GL程序(比如业余玩玩的),以上环境就够用了。编译示例请移步2楼 ===
GLEW(自动识别平台所支持的OpenGL高级扩展函数以及使用接口)
需要的工具:MSYS2.0
GLEW主页:http://glew.sourceforge.net/
下载页面:https://sourceforge.net/projects/glew/files/glew/2.0.0/
对于mingw,应选择 glew-2.0.0.zip,解压位置(示例):D:\OGL\glew2.0.0
这里面的静态、动态库都是需要手动编译的,通过系统菜单打开 "MinGW-w64 Win32 Shell" (注意是32位版本的)
执行make命令,得到类似下方的输出,有一些错误,但是库文件可以用。(编译 glew1.3.0 时没有这些问题)代码: 全选
VSUS@VIC-PC MINGW32 ~ $ cd "D:\OGL\glew-2.0.0" VSUS@VIC-PC MINGW32 /d/OGL/glew-2.0.0 $ make sed \ -e "s|@prefix@|/usr|g" \ -e "s|@libdir@|/usr/lib|g" \ -e "s|@exec_prefix@|/usr/bin|g" \ -e "s|@includedir@|/usr/include/GL|g" \ -e "s|@version@|2.0.0|g" \ -e "s|@cflags@||g" \ -e "s|@libname@|glew32|g" \ -e "s|@requireslib@|glu|g" \ < glew.pc.in > glew.pc gcc -fno-builtin -O2 -Wall -W -Iinclude -fno-builtin -fno-stack-protector -o bin/glewinfo.exe tmp/mingw/default/shared/glewinfo.o -Llib -lglew32 -L/mingw/lib -nostdlib -lopengl32 -lgdi32 -luser32 -lkernel32 tmp/mingw/default/shared/glewinfo.o:glewinfo.c:(.text+0x30): undefined reference to `fprintf' tmp/mingw/default/shared/glewinfo.o:glewinfo.c:(.text+0x5a): undefined reference to `strlen' ... tmp/mingw/default/shared/glewinfo.o:glewinfo.c:(.text.startup+0x1980): undefined reference to `__imp___iob_func' tmp/mingw/default/shared/glewinfo.o:glewinfo.c:(.text.startup+0x1993): undefined reference to `fprintf' collect2.exe: error: ld returned 1 exit status makefile:176: recipe for target 'bin/glewinfo.exe' failed make: *** [bin/glewinfo.exe] Error 1
GLFW
官网:http://www.glfw.org/预编译版本(只有库文件,没有提供示例代码和程序)Windows pre-compiled binaries
手动编译
例如下载到的压缩包是 glfw-3.1.1.zip,解压,命令行进入该目录,cmake -G"MinGW Makefiles" .
make
无误的话,会在 glfw-3.1.1\examples 目录内生成示例程序,可以试运行看看。
库文件位置 glfw-3.1.1\src\libglfw3.a