Freeglut在windows 7 64bit + visual studios 2010下的安装与配置

本文详细介绍了如何从官方网站下载并安装FreeGLUT库,包括配置Visual Studio 2010进行编译,以及如何将必要的文件放置到正确的位置以确保程序能够正常运行。此外,还提供了一个简单的OpenGL测试程序示例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

  1. http://freeglut.sourceforge.net/上寻找和下载freeglut最新版源代码(我下载的是2.8.1)
  2. 解压缩,用vs2010打开“freeglut-2.8.1\VisualStudio\2010”目录下的“freeglut.sln”文件。
  3. 生成解决方案,使用release,分别生成win32和x64的。
  4. 然后进入“freeglut-2.8.1\lib”。分别复制x64和win32下的freeglut.dll文件到“C:\windows\system32”和“C:\windows\sysWoW64”下。
  5. 注意!在64位版本的windows 7 下,win32版的freeglut.dll要放入sysWoW64,而x64版本的要放入system32。因为system32中的动态链接库其实是原生64位版本的。而为了兼顾兼容性,才有了sysWoW64,这个目录中存放的反而是32位的链接库。
  6. 接着分别将x64和win32目录下的两个freeglut.lib放入“D:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\lib\amd64”和“D:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\lib”。这里就是正常对应的。
  7. 最后将“\freeglut-2.8.1\include”下的“GL”目录复制到“D:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include”即可。
  8. 对于我们将要做测试的第一个例子来说,到这一步就足够了。用vs建一个空项目,将http://ogldev.atspace.co.uk/www/tutorial01/tutorial01.html上的代码粘贴进去:
 1 #include <GL/freeglut.h>
 2 
 3 #pragma comment(lib, "freeglut")
 4 
 5 static void RenderSceneCB()
 6 {
 7     glClear(GL_COLOR_BUFFER_BIT);
 8     glutSwapBuffers();
 9 }
10 
11 static void InitializeGlutCallbacks()
12 {
13     glutDisplayFunc(RenderSceneCB);
14 }
15 
16 
17 int main(int argc, char** argv)
18 {
19     glutInit(&argc, argv);
20     glutInitDisplayMode(GLUT_DOUBLE|GLUT_RGBA);
21     glutInitWindowSize(1024, 768);
22     glutInitWindowPosition(100, 100);
23     glutCreateWindow("Tutorial 01");
24 
25     InitializeGlutCallbacks();
26 
27     glClearColor(0.0f, 0.0f, 0.0f, 0.0f);
28 
29     glutMainLoop();
30     
31     return 0;
32 }

编译运行,接着会出现一个命令行窗口和一个黑色窗口。这样就成功了。

PS:如果没有将freeglut.dll复制到正确的位置,程序编译成功,但无法运行。

PS2:那个命令行窗口的出现是正常的,如果要消去,就要使用win32窗口项目,这样就得微调代码。对于opengl的学习来说没有意义,调试也会变得不方便,得不偿失。

转载于:https://www.cnblogs.com/gnim/p/3536399.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值