按:按照下述博文,三个例子均成功。

https://blog.csdn.net/so_geili/article/details/51685005

请仔细阅读每一个字。

为了学习《OpenGL超级宝典(第五版)》必须配置OpenGL环境,正所谓工欲善其事必先利其器。翻阅了很多网上的配置教程,很多都有问题,但也有详细的精华教程,比如博客: http://www.zyh1690.org/build-opengl-super-bible-fifth-edition-development-environment/ 。尽管该教程很详细,但其中还是有些细节问题,博客中没有细说。配置OpenGL环境一定要细心、耐心。因为有一点疏忽都可能导致最终配置环境失败。本篇虽然是针对“win7 X64 +VS2010”环境的配置过程,但是我在VS2012/VS2015下也搭建成功了,VS2012/VS2015下配置OpenGL的原理也很简单,就是其中的Microsoft Visual Studio 10.0下要添加的文件变成Microsoft Visual Studio 12.0或Microsoft Visual Studio 15.0下添加相关的文件。

配置环境:

win7 X64 + Visua Studio 2010

win7 X64 + Visua Studio 2012

win7 X64 + Visua Studio 2015

所需要的配置文件及工具:

百度云盘下载地址

链接:http://pan.baidu.com/s/1kVsKUGJ  密码: xxqq

链接: http://pan.baidu.com/s/1slu9RK5 密码: asj8

下面正式开始搭建:>>>>>>>>>>>>>>>>>>>>>>>>分割线>>>>>>>>>>>>>>>>>>>>>>>>>分割线>>>>>>>>>>>>>>>>>>>>>>>>>

一、freeglut配置

打开 x:\x\freeglut-2.8.1\VisualStudio\2010\freeglut.sln 项目工程,(如果是配置VS2015,可以选择x:\x\....\2015\freeglut.sln 项目工程)

分别已Debug模式和Release模式生成解决方案。(只生成一个也可。建议在debug模式下编译,无需执行。如果运行弹出黑框,忽视即可。32位操作系统注意,最终在运行蓝宝书Chapter01\Block  的代码时,如果遇到freeglut_static.lib无法打开问题,应该选择Debug_Static模式重新编译,生成所需的freeglut_static.lib,添加到指定的文件夹中

会在 x:\x\freeglut-2.8.1\lib\x86 目录下看到生成的 .dll 和 .lib 文件,其中请把 Debug目录 中的 .dll 和 .lib 文件加上 _d 以便以后区分。如图:

 x:\x\freeglut-2.8.1\include\GL 文件夹下的 .h文件 复制到 x:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\GL 目录下,没有GL文件夹的要自己建

 x:\x\freeglut-2.8.1\lib\x86 文件夹下(以及Debug文件夹)的 .dll 文件复制到 C:\Windows\SysWOW64 目录(x86 复制到 System32目录下)。

把 x:\x\freeglut-2.8.1\lib\x86 文件夹下(以及Debug文件夹)的 .lib文件复制到 x:\x\Microsoft Visual Studio 10.0\VC\lib

至此,freeglut搞定!

(这一步搞定后,可以用代码检查。

测试一:建立win32 控制台工程,添入测试代码 ,编译运行。

测试二:建立win32 控制台工程,添入测试代码,编译运行。)

二、Glew配置

把 x:\x\glew-1.11.0\include\GL 文件夹下的.h文件复制到 x:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\GL 目录下。

把 x:\x\glew-1.11.0\lib\Release\Win32 文件夹下的 .lib文件复制到 x:\x\Microsoft Visual Studio 10.0\VC\lib 目录下。

把 x:\x\glew-1.11.0\bin\Release\Win32 文件夹下的 .dll文件复制到 C:\Windows\SysWOW64 目录下。(如果没有,就跳过)

(注意,如果配的是VS2015,需要将配置文件放入x:\x\Microsoft Visual Studio 15.0....中)

三、Glut配置

 x:\x\glutdlls37beta 文件夹下的 .h文件 复制到 x:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\GL 目录下。

把 x:\x\glutdlls37beta 文件夹下的 .lib文件 复制到 x:\x\Microsoft Visual Studio 10.0\VC\lib 目录下。

把 x:\x\glutdlls37beta 文件夹下的 .dll文件 复制到 C:\Windows\SysWOW64 目录下。

(注意,如果配的是VS2015,需要将配置文件放入x:\x\Microsoft Visual Studio 15.0....中)

四、构建GLTools库

新建一个gltoolswin32项目工程,如图:

先编译一下,(原文这里有错误,下面是我修改的)

把 x:\x\SB5\Src\GLTools\src 目录下的.cpp文件不包括glew.c文件)复制到 x:\x\gltools\gltools。

 x:\x\SB5\Src\GLTools\include 目录下的.h文件不包括GL文件夹)复制到 x:\x\gltools\gltools。

分别在头文件和源文件上右键 添加->现有项 把 .h 和 .cpp 文件添加到项目。如图:

编译提示如下:

gltools.lib 文件生成成功。可以在 x:\x\gltools\Debug 目录下查看。

把 .lib文件 复制到 x:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\lib 文件夹下。

把 .h文件 复制到 x:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include 文件夹下(注意这次不是GL文件夹)。

到此gltoolsOK了。

五、测试

我们使用书中给的例子来测试一下环境。如果测试成功,则OpenGL环境才算是配好了。

建立test的项目工程:

我们使用第一章的例子来测试,复制 x:\x\SB5\Src\Chapter01\Block 中的所有文件 x:\x\test\test 文件夹下。同样在源文件上右键 添加->现有项Block.cpp文件包含进来。

添加附加依赖项(第一个图)(这种添加依赖项方式,仅仅对当前test项目生效。为了让其他项目也可以使用这些个.lib文件,所以应该在属性管理器中添加依赖项,具体方式见下面第二个图)

编译运行项目,效果如图:(如果编译出错,则用百度浏览器搜索错误信息,寻找相应的解决方案。或者查看本博文最后的“一些特殊情况的处理”,可能会得到帮助。)

按空格键变换显示效果,共六种效果:

六、一些特殊情况的处理:

完全按照上面的教程配置OpenGL环境,在大多数电脑上,都能成功。但凡是都有例外,如果配置失败,下面的一些配置细节或许可以帮你解决问题。

case1:freeglut_static.lib无法打开问题

方案一:还需要将\OpenGL超级宝典\SB5\SB5\freeglut-2.6.0\VisualStudio2008Static\Release里的freeglut_static.lib拷贝到 x:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\lib才能运行成功。如果失败,可以尝试方案二;

方案二:仔细查看本篇博文关于 freeglut配置部分,有红色加粗部分。留意配置细节。 case2:“math3d.h”: No such file or directory

如果出现c:\project\gltools\gltools\math3d.cpp(45): fatal error C1083: 无法打开包括文件:“math3d.h”: No such file or directory等头文件找不到的情况就需要把VC/include文件夹里面也加上了math3d.h等头文件加上就可以运行了。

case3:Visual Studio 2015中ucrtbased.dll丢失

可以按照这个链接:http://blog.csdn.net/so_geili/article/details/53009680  ,选择里面的“解决方案三”来解决问题。

VS2010/VS2012/VS2015下openGL环境配置(转)的更多相关文章

  1. Mac CLion下OpenGL环境配置

    1. 配置glew和glfw 终端下运行下面两句,安装完后在/usr/local/Cellar/下可以找到对应的目录. brew install glew brew install glfw3 效果如 ...

  2. Atitit. visual studio vs2003 vs2005 vs2008  VS2010 vs2012 vs2015新特性 新功能.doc

    Atitit. visual studio vs2003 vs2005 vs2008  VS2010 vs2012 vs2015新特性 新功能.doc 1.1. Visual Studio2 1.2. ...

  3. VS2015调用Matlab2017a环境配置(转载)

    VS2015调用Matlab2017a环境配置 一定要在Debug+x64平台下进行配置,x64,x64,x64!!!* 1.配置环境变量 右键计算机—–>属性——>高级系统设置——> ...

  4. 【转存】阿里云服务器下 LAMP 环境配置 —— 基于 CentOS 6.3

    阿里云服务器下 LAMP 环境配置 —— 基于 CentOS 6.3  Posted on 2016年2月10日 by  学院君 1.Apache 配置 —————————————————– vi / ...

  5. Windows 下 MSYS2 环境配置和 MinGW-w64 C++ 环境配置

    Windows 下 MSYS2 环境配置和 MinGW-w64 C++ 环境配置 1.简介 本文主要是 Windows 下 MSYS2 环境配置和 MinGW-w64 C++编译环境配置方法 2.下载 ...

  6. VS2015下OpenGL库的配置

    写在前面: 最近要用到OpenGL,光是在VS2015下配置就费了很大的劲,现在将我的成果直接贡献给大家,希望能为需要在VS2015下配置OpenGL的读者省去一些麻烦. 正文: 资源地址1:http ...

  7. OpenGL: 环境配置和图元的绘制

    前言 距离上一篇博客已经过去一个半月了,这段时间过得确实充实,虽然一大段时间泡在图书馆复习,但至少也能学到点东西.跨年晚和元旦一整天,全身心投入图形学小课设的编程,终于实现了老师要求的所有功能,回想起 ...

  8. 图解VC++ opengl环境配置和几个入门样例

    VC6下载 http://blog.csdn.net/bcbobo21cn/article/details/44200205 demoproject和glut库下载 http://pan.baidu. ...

  9. Opencv学习笔记1:安装opencv和VS2015并进行环境配置

    用了Opencv一段时间了,简单记录一下opencv在vs2015下的配置. 第一部分:OpenCV3.2.0的下载 OpenCV官方下载地址: https://opencv.org/releases ...

随机推荐

  1. lstm-bp过程的手工源码实现

    近些年来,随着深度学习的崛起,RNN模型也变得非常热门.如果把RNN模型按照时间轴展开,它也类似其它的深度神经网络模型结构.因此,我们可以参照已有的方法训练RNN模型. 现在最流行的一种RNN模型是L ...

  2. Oracle - 合并查询数据项

    select c.channel, c.channel_name , s.show_type, s.show_type_name from T_CHANNEL_INFO c, T_SHOW_INFO ...

  3. DOS窗口操作MySQL数据库

    本周学习内容: 1.学习MySQL数据库.Linux私房菜: 2.等级评测培训: 3.练习MySQL数据库.练习CentOS7: 实验内容: 1.使用DOS窗口进入MySQL数据库 2.解决MySQL ...

  4. flash文件上传下载组件

    以ASP.NET Core WebAPI 作后端 API ,用 Vue 构建前端页面,用 Axios 从前端访问后端 API ,包括文件的上传和下载. 准备文件上传的API #region 文件上传  ...

  5. Sage Math中的语法

    1.赋值后不能立即输出,而需要停顿.x= 3  不能输出显示,而 x= 3; x 可以显示. 2.可以用分号连续书写多行. 3.矩阵可以用 mtx[i, j]引用,但是行列号通常从0开始,维度n, m ...

  6. 记录一个webstorm的设置或者说小技巧

    在 html 的元素中,如果输入属性,默认会填充 引号,在 react 书写中非常不方便. 其中的JSX很多时候是不需要 quotation 的,只是需要一个 括号 {} 即可. 自己找了下webst ...

  7. establish状态,本地ip和端口连接本地ip端口可能是一样的。

    以下是从stackoverflow上抄下来的,很有帮助 How can you have a TCP connection back to the same port? A TCP connectio ...

  8. 地区sql

    /*Navicat MySQL Data Transfer Source Server : localhostSource Server Version : 50136Source Host : lo ...

  9. sudo 命令

    su命令和su -命令最大的本质区别就是: 前者只是切换了root身份,但Shell环境仍然是普通用户的Shell: 而后者连用户和Shell环境一起切换成root身份了.只有切换了Shell环境才不 ...

  10. Complete the Projects

    F1. Complete the Projects (easy version) F2. Complete the Projects (hard version) 参考:Complete the Pr ...