《OpenGL编程精髓》光盘示例程序运行环境配置
来源:互联网 发布:比尔盖茨 乔布斯 知乎 编辑:程序博客网 时间:2024/04/27 14:54
===============================================================
【问题】
#include <gl\glaux.h>
这一行缺少文件,导致编译不过
===============================================================
【了解】
后来搜索以后才知道glaux是《OpenGL 编程指南》(red book)里使用的小框架,它的作用是:
封装了windows的一些函数,例如加载读取bitmap
如auxSolidTeapot函数可以直接绘制一个茶壶
如auxInitWindowA函数封装了windows窗口的初始化
如auxMouseFunc函数封装了鼠标事件的输入
如auxMainLoop函数封装了程序运行函数
后来发现与其使用glaux其实不如使用glut,glut封装得更好,功能也更强大,而且是开源的。
没办法,谁叫示例里使用的是glaux呢?
===============================================================
【下载】
如何下载呢?大致在网上搜索了一下发现CSDN里有一个免费下载地址:
glaux库下载:
http://download.csdn.net/detail/li235456789/8224459【使用】
--------------------------------------------------------------------------------------------------------------
[第一种摆放方法]
找到windwos sdk的安装目录,
C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0AC:\Program Files (x86)\Microsoft SDKs\Windows\v7.1A
C:\Program Files (x86)\Microsoft SDKs\Windows\v8.0
C:\Program Files (x86)\Microsoft SDKs\Windows\v8.0A
C:\Program Files (x86)\Microsoft SDKs\Windows\v8.1
C:\Program Files (x86)\Microsoft SDKs\Windows\v8.1A
C:\Program Files (x86)\Microsoft SDKs\Windows\v7.1A\Include\gl
C:\Program Files (x86)\Microsoft SDKs\Windows\v7.1A\Lib
C:\Program Files (x86)\Microsoft SDKs\Windows\v7.1A\Lib\x64
发现每个特定版本sdk里的文件夹又分别分为x86的和x64的:
把解压后的几个文件分别拷贝到对应的目录里:
C:\Program Files (x86)\Microsoft SDKs\Windows\v7.1A\Include\gl\GLAUX.H
C:\Program Files (x86)\Microsoft SDKs\Windows\v7.1A\Lib\GLAUX.LIB
C:\Windows\System32\glaux.dll
--------------------------------------------------------------------------------------------------------------
[第二种摆放方法]
OpenGL实例编程精粹\gl\glaux.h
OpenGL实例编程精粹\gl\glaux.lib
OpenGL实例编程精粹\gl\glaux.dll
进入工程:
OpenGL实例编程精粹\第7章\DrawBitmap\DrawBitmap.sln
添加:
Configuration Properties -> C/C++ -> General -> Additional Include Directories -> $(ProjectDir)..\..\
Configuration Properties -> Linker -> General -> Additional Library Directories -> $(ProjectDir)..\..\gl
Configuration Properties -> Linker -> Input -> Additional Dependencies -> glaux.lib
或者在.cpp里上方添加:
#pragma comment(lib, "glaux.lib")
运行,ok!
===============================================================
如果在draw函数中调用了glaux的函数:
auxSolidTeapot(1.0f);
编译的时候就会产生错误导致编译不过:
error LNK2026: module unsafe for SAFESEH image.
Configuration Properties -> Linker -> Advanced -> Image Has Safe Exception Handlers -> Yes (/SAFESEH)
更改为:
Configuration Properties -> Linker -> Advanced -> Image Has Safe Exception Handlers -> No(/SAFESEH:NO)
重新编译,这样就可以通过编译了。
===============================================================
- 《OpenGL编程精髓》光盘示例程序运行环境配置
- OpenGL编程环境配置
- VS2013配置OpenGL编程环境
- java JDK环境 配置精髓
- vs2008 + openGL 3.3编程环境配置
- opengl编程指南示例程序2-15完整代码
- OpenGL: glEdgeFlag示例程序:
- Delphi 7.0的access数据库程序脱离编译环境在光盘中运行
- 配置 hadoop 开发环境+运行 wordcount 程序
- Linux下 运行apue程序环境配置
- xcode运行OpenGL程序
- 光盘自动运行程序的秘密
- 配置《UNIX环境高级编程》中程序的运行环境,解决“apue.h:没有那个文件或目录”错误
- [OpenGL] OpenGL+VS2015环境配置
- [OpenGL] OpenGL+VS2015环境配置
- [OpenGL] OpenGL+VS2015环境配置
- codeblocks 及VS2008开发OpenGL程序时,环境配置
- OpenGL的环境配置和第一个程序
- 多线程求素数
- [LeetCode OJ][005]Longest Palindromic Substring
- Android 高级绘图
- git的 .gitignore 文件编写
- DAY_3
- 《OpenGL编程精髓》光盘示例程序运行环境配置
- Eclipse免快捷键自动补全的设置方法
- Nutch & Lucene 之 搜索引擎文本分析
- 检测软键盘的弹起与隐藏
- android中的通信机制总结
- 代码性能优化小技巧
- PS 切片工具实现CubeMap制作
- POJ 1330 Nearest Common ancesters(LCA,Tarjan离线算法)
- GCC扩展 __attribute__ ((visibility("hidden")))