OpenGL超级宝典(第五版)环境配置【转】
OpenGL超级宝典(第五版)环境配置
Vs2008+winXP 后续会整理Ubuntu 12.04LTS下的配置作者:sunny_unix
1.各种库的配置
(1)glew
下载:https://sourceforge.net/projects/glew/files/glew/1.7.0/glew-1.7.0.zip/download
将include文件夹下的.h文件拷贝到C:\Program Files\Microsoft Visual Studio 9.0\VC\include\GL目录中(没有GL目录就自己创建一个,这里的具体路径视电脑上VS2008安装的位置而定)
将lib文件夹下的.lib文件拷贝到C:\Program Files\Microsoft Visual Studio 9.0\VC\lib目录中
将bin文件夹下的.dll文件拷贝到C:\Windows\System32目录中
(2)glut
下载OpenGL的glut类库:http://www.opengl.org/resources/libraries/glut/glutdlls37beta.zip
将.h文件拷贝到C:\Program Files\Microsoft Visual Studio 9.0\VC\include\GL目录中(没有GL目录就自己创建一个,这里的具体路径视电脑上VS2008安装的位置而定)
将.lib文件拷贝到C:\Program Files\Microsoft Visual Studio 9.0\VC\lib目录中
将.dll文件拷贝到C:\Windows\System32目录中
环境变量配置好后不必每个新建项目都按照下面这样配置。下面步骤仅限没有进行上述配置的用户。
2.配置项目环境
在需要用到openGL的每个项目中都需要执行以下步骤:
(1)项目——项目属性——配置属性——C/C++— —预处理器——预处理器定义,添加
GLUT_BUILDING_LIB
(2)项目——项目属性——配置属性——链接器——输入——附加依赖项,添加
glut32.lib Opengl32.lib Glu32.lib glew32.lib
3.应用举例
(1)先创建一个Win32控制台应用程序项目(文件——新建——项目——win32——win32控制台应用程序),在下面的名称处任意命名,假定是helloworld,然后点确定。之后点下一步,然后在附加选项的空项目之前打勾,之后点完成。
(2)配置项目属性:如上面所述2所述
(3)在解决方案管理器的源文件文件夹上点右键,添加——新建项——c++文件,任意命名,假定是Hello。
在导航窗格中的源文件分类下的Hello.cpp中输入如下代码:
[cpp]view plaincopyprint?
1. #include <windows.h> //这个必不可少
2. #include <gl/glut.h>
3. void display()
4. {
5. glClear(GL_COLOR_BUFFER_BIT);
6. glColor3f(1.0,1.0,1.0);
7. glBegin(GL_POLYGON);
8. glVertex3f(0.25,0.25,0.0);
9. glVertex3f(0.75,0.25,0.0);
10. glVertex3f(0.75,0.75,0.0);
11. glVertex3f(0.25,0.75,0.0);
12. glEnd();
13. glFlush();
14.}
15.void init()
16.{
17. glClearColor(0.0,0.0,0.0,0.0); //以黑色清屏
18. glMatrixMode(GL_PROJECTION); //glMatrixMode - 指定哪一个矩阵是当前矩阵
19. //GL_PROJECTION,对投影矩阵应用随后的矩阵操作
20. glLoadIdentity(); //该函数的功能是重置当前指定的矩阵为单位矩阵
21. glOrtho(0.0,1.0,0.0,1.0,-1.0,1.0);
22.}
23.int main(int argc,char** argv)
24.
25.{
26. glutInit(&argc,argv);
27. glutInitDisplayMode(GLUT_SINGLE|GLUT_RGB);
28. glutInitWindowSize(250,250);
29. glutInitWindowPosition(100,100);
30. glutCreateWindow("Hello OpenGL");
31. init();
32. glutDisplayFunc(display);
33. glutMainLoop();
34. return 0;
35.}
运行结果是个矩形,成功!
4.OpenGL超级宝典第五版的实例代码运行方法:
条件:下载--SB-WinSrc.rar和SB5.rar
SB-WinSrc.rar 解压后将share文件夹放在代码的../../下面(代码中的GLTools.h位置)后将SB5.rar解压后用已经配置好OpenGL的VS2008(上述配置过的那步)打开SB5\freeglut-2.6.0\VisualStudio2008Static下编译出freeglut_static.lib考到
C:\Program Files\Microsoft Visual Studio 9.0\VC\lib下后就能运行实例代码了
5.OpenGL超级宝典第五版的教学代码运行方法:
条件:SB5.rar
SB5.rar解压后将SB5\Src\GLTools\include的头文件考到C:\Program Files\Microsoft Visual Studio 9.0\VC\include中。
将SB5\VisualStudio2008\GLTools\Release中的gltools.lib考到C:\Program Files\Microsoft Visual Studio 9.0\VC\lib中
运行时遇到错误的看下面:
1. 将C:\Program Files\Microsoft Visual Studio 9.0\VC\include\glut.h复制到
C:\Program Files\Microsoft Visual Studio 9.0\VC\include\GL中
2. 静态库动态库编译时都选---项目-----属性----配置属性---C/C++----代码生成----运行时库都用和生成gltools.lib一样的-------多线程/MT
3. 因为生成gltools.lib需要glew库而第五版用的是OpenGL3.3所以glew要用1.9的版本而且要用生成gltools.lib的头文件(在src目录里面)的glew.h glxew.h wglew.h 覆盖原来的才行。
4. 现在打开示例代码后选---属性----配置属性---C/C++----代码生成----运行时库—MT后试试能不能运行,如果能运行那接着向下进行,如果失败那先停在这看看前面自己仔细在检查一遍解决完在向下进行。
5. 打开gltools项目将项目-----属性----配置属性---C/C++----代码生成----运行时库—多线程调试/MDT后再次编译一个MDT版本的库后一次将freeglut_static.lib和freeglut.lib一样也编译后覆盖原来的。
6. 再次打开刚才那个实例项目将项目-----属性----配置属性---C/C++----代码生成----运行时库—多线程调试/MDT后运行是否通过,通过就说明成功,忘了说一下运行前别忘了先清理一下项目!!。
关于后面的OpenEXR:
1)下载相关组件
在C盘下建立一个目录libs-x86,从OpenEXR官网http://www.openexr.com/downloads.html下载最新稳定版本:
IlmBase 1.02 source code release
OpenEXR 1.7.0 source code release
从网站http://www.winimage.com/zLibDll/index.html 下载zlib-1.2.5的源文件(用到其中的zlib.h和zconf.h)和dll文件:
zlib125.zip
zlib125dll.zip
这里需要说明的是,OpenEXR1.7.0用到的zlib版本为zlib-1.2.5,下载更新的版本会引起错误。
2)将下载文件解压到目录C:/libs-x86下
打开c:/libx-x86/ilmbase-1.0.2/vc/vc8/IlmBase/IlmBase.sln,选择Tools->VisualStudio Command Prompt,在打开的DOS界面输入:
cd c:\libs-x86\ilmbase-1.0.2\Half
cl eLut.cpp
cl toFloat.cpp
eLut > eLut.h
toFloat > toFloat.h
生成相应的文件。
3)选择Debug配置,编译解决方案
4)选择Release配置,编译解决方案
5)此时在C盘下创建了一个目录C:\Deploy,目录下有lib,include,bin三个子目录。
6)复制zlib.h和zconf.h从目录c:\libs-x86\zlib125到目录c:\Deploy\include
复制zdllwapi.lib和zlibwapi.exp从c:\libs-x86\zlib125dll\dll32到C:\Deploy\lib\Win32\Debug
复制zdllwapi.lib和zlibwapi.exp从c:\libs-x86\zlib125dll\dll32到C:\Deploy\lib\Win32\Release
复制zdllwapi.dll从c:\libs-x86\zlib125dll\dll32到C:\Deploy\bin\Win32\Debug
复制zdllwapi.dll从c:\libs-x86\zlib125dll\dll32到C:\Deploy\bin\Win32\Release
在VS2010中打开C:\libs-x86\openexr-1.7.0\vc\vc8\OpenEXR\OpenEXR.sln
选择Debug配置,选择ProjectIlmImf,右键ProjectOnly->Build OnlyIlmImf,然后再Build整个解决方案。
选择Release配置,选择ProjectIlmImf,右键ProjectOnly->Build OnlyIlmImf,然后再Build整个解决方案。
遇到问题及解决方案:
1)在Debug模式下,LINK : fatal error LNK1104: cannot open file'..\Win32\Debug\IlmImf.map'
解决方法:IlmImf右键->Properties->Linker->General->EnableIncremental Linking,设置为No。
之后考到相关目录就行了,还有后面代码可能除了有问题还有就是你的电脑支持的opengl版本,太低的程序也不能运行!!!
上述方法仅限初学者学习OpenGL超级宝典(第五版)读者可能遇到的问题,本人并不是老鸟为大家节省时间而已学习时没必要按书上每次都要加额外库。如果开发发布版本代码可以参见书第一章节步骤这里直接略过。
OpenGL学习群:134952390
opengl程序运行提示丢失glut32.dll
转载自:http://www.cppblog.com/longzxr/archive/2009/12/04/102565.html
今天调试OpenGl的源程序,编译通过,但一运行就提示,计算机丢失 glut32.dll文件,郁闷的不行,上网查了下,网上提供的绝大多是做法都是,先下载这个文件复制这个文件到 C:\WINDOWS\system 32中,但是照做了后发现依旧不行,折腾了一下午后,突然之间意识到可能是我新装的windows 7系统有关,而且因为装的是64位的,于是,试着将这个 glut32.dll复制到C:\WINDOWS中的SysWOW64的文件夹中,后来就全都ok了,唉,在此特记录下来,提醒以后的各位装了Win 7又装了Vc++ 6.0 的各位朋友注意一下。
PS:刚开始接触OpenGl的时候难免会遇到一些问题,这些问题可能和程序无关,只是一些编译环境的设置和头文件的安装,特别整理了一下,如下:
(1)将gult32.dll,glut.dll复制到windows系统system32(如果是win 7 64位操作系统,则是C:\WINDOWS中的SysWOW64这个文件下)
(2)将gult32.lib,glut.lib复制到vc的lib目录下
(3)将gult.h复制到vc的include\GL下
转自:http://blog.csdn.net/sunny_unix/article/details/8056807
OpenGL超级宝典(第五版)环境配置【转】相关推荐
- OpenGL超级宝典第7版环境配置
1.下载源码 地址:http://www.openglsuperbible.com/ 2.运行Cmake,编译glfw库 打开项目后,编译工程(Debug和Release下都编译). 把E:\open ...
- OpenGL红宝书第九版环境配置
OpenGL红宝书第九版环境配置(VS2017) 对于很多想要学OpenGL的人来说,环境配置一直是一个大问题,笔者就是其中之一.虽然网络上有许多教程,但是由于不同的教程使用的库并不同,利用这些教程配 ...
- vs2013 下配置OpenGL(超级宝典第五版)开发环境
系统环境: win7 64位 , VS2013_DskExp vs2013 安装路径:E:\vs_e2013 说明:这个环境主要针对 <OpenGL 超级宝典>第五版 书中测试代码所以搭 ...
- 《OpenGL超级宝典第5版》学习笔记(一)—— 第一个OpenGL程序
// GLTools库包含了一个用于操作矩阵和向量的3D数学库,并依靠GLEW获得OpenGL3.3中用来产生和渲染一些简单3D对象的函数, // 以及对视觉平截头体.相机类和变换矩阵进行管理的函数的 ...
- OpenGL超级宝典(第五版)环境配置
本文转自:http://blog.csdn.net/sunny_unix/article/details/8056807,感谢作者分享. OpenGL超级宝典(第五版)环境配置 Vs2008+winX ...
- OpenGL超级宝典(第五版) 环境配置
特别提醒:有些在word中或者其他中的代码复制到vs中会报错,原因是word中有些隐含的字符,复制到vs中就会报错:重新输一遍就可以解决问题,这里只是提醒下! 可以参阅我前面转载的一篇文章,进行比较然 ...
- OpenGL超级宝典(第五版) 环境配置(WinXp+VS2008)
转自:http://blog.csdn.net/sunny_unix/article/details/8056807 OpenGL超级宝典(第五版)环境配置 1.各种库的配置 (1)glew 下载:h ...
- [转]OpenGL超级宝典 5e 环境配置
OpenGL超级宝典(第五版)环境配置 1.各种库的配置 (1)glew 下载:https://sourceforge.net/projects/glew/files/glew/1.7.0/glew- ...
- OpenGL超级宝典 5e 环境配置
OpenGL超级宝典(第五版)环境配置 1.各种库的配置 (1)glew 下载:https://sourceforge.net/projects/glew/files/glew/1.7.0/glew- ...
最新文章
- 用ACL构建防火墙体系
- Linux中的vi和vim
- mysql不能创建innodb类型表_MYSQL have_innodb DISABLED无法创建innodb类型的表
- 治病花了130万才明白:不要轻易买保险
- 她弯着头说的7pyx 2013
- js工作笔记001---javascript中(function($){...})(jQuery)写法是什么意思
- 20190922 On Java8 第二十一章 数组
- 胡萝卜,是鸡蛋,还是咖啡豆
- 李洪强iOS开发之OC[011] - 有参方法的声明实现以及调用练习
- 使用Sqlserver事务发布实现数据同步(转)
- html 椭圆特效,HTML帖图常用到的特效《椭圆形》(国外英语资料).doc
- 人工智能杂记 人工智能简史
- 明翰豆瓣列表V1.5(持续更新)
- iphone邮件服务器 263,如何在iPhone和iPad中设置使用263企业邮箱?
- 微信小游戏排行榜制作(主域子域)
- matlab 圆角,rectangle函数MATLAB matlab中rectangle画圆角矩形
- esp32--无线控制灯
- opencv计算图像亮度调节_opencv调整图像亮度对比度
- 项目实训第一周2-学习系统的使用
- 攻防技术第二篇之-知己(防御手段)