Win10+VS2013下配置OpenGl血泪经验

结合了三篇教程和自己的一些经验

Posted by 陈剑 on April 19, 2018

前言

最近打算学习OpenGl,感觉学习一门新技术最大的障碍就是配置..这个包管理那个包,那个版本不兼容这个库的,所以我在了解到OpenGl是很底层的API库时,就想到这么底层..配置起来肯定很麻烦,果不其然。

正文

工欲善其事必先利其器,首先肯定是大量的查资料,最后决定从两本书入手,《OpenGl超级宝典第五版》和《OpenGl编程指南》,这两本书分别给誉为蓝宝书和红宝书。蓝宝书偏基础,有大量的应用实例,适合拿来做入门书,红宝书则可将它当做工具书需要时查阅即可。

首先我是先花了一整天的时间下载安装了VS2017..刚开始看的教程里是用cmake构建OpenGl,折腾了老半天没搞定,然后又上知乎看到很多人推荐蓝宝书,拿到蓝宝书才发现上面的IDE是2013,其实我猜2017应该也可以,但是为了保险起见还是又卸载后又花了一天时间下载安装2013。然后按照上面的步骤走到添加路径时居然显示已经弃用此方法,书的版本太老了..

于是花了三天的时间全网搜教程,但是最终要不就是库不全要不就是版本不兼容的问题,折腾了一个星期今天下午居然误打误撞,综合了两个教程的内容成功的配置完编译出来了,编译成功的界面如下:

一.用到的资料

首先是资源地址:https://pan.baidu.com/s/1yuLgX3p9EDrUweppOSqOIA 提取码:anjc

下载资源后,解压“OpenGl安装包。zip”,在“OpenGl安装包”文件夹下可以看到demo(蓝宝书里的),freeglut、glew、gltools和glut五个文件夹。

二.过程步骤

一.glew配置:

1.解压compiled文件夹下的“glew-2.0.0-win32.zip”,得到glew-2.0.0文件夹。

2.找到VS2013的安装目录,如果是安装在C盘的,多半是类似C:\Program Files(x86)\Microsoft Visual Studio 12.0这样的路径;

3.找到C++的头文件目录,如“D:\软件安装\VS2013\VC\include”,在include目录下新建GL文件夹。

4.将1中glew-2.0.0\include\GL文件夹下的4个头文件都拷贝到3中的GL文件夹下。

5.将glew-2.0.0\bin\Release\Win32下的glew32.dll拷贝到D:\软件安装\VS2013\VC\bin目录下。

6.将glew-2.0.0\lib\Release\Win32下的两个lib文件拷贝到D:\软件安装\VS2013\VC\lib目录下。

注意,没必要将dll文件拷贝到C:\Windows\System32或C:\Windows\SysWOW64下,之前看到有个教程提到要拷贝,导致白浪费了很多时间。

至此,glew配置完毕。

二.glut配置  

1.将glut文件夹下的“glutdlls37beta.zip”解压,得到5个文件,分别是glut.h、gult.dll、glut32.dll、glut.lib、glut32.lib。

2.将glut.h拷贝到D:\软件安装\VS2013\VC\include\GL目录下。

3.将gult.dll、glut32.dll拷贝到D:\软件安装\VS2013\VC\bin目录下。

4.将glut.lib、glut32.lib拷贝到D:\软件安装\VS2013\VC\lib目录下。

至此,glut配置完毕。

三.freeglut配置  

1.将freeglut文件夹下的“freeglut-MSVC-3.0.0-2.mp.zip”解压,得到freeglut文件夹。

2.在freeglut/include/GL目录下有4个头文件,将除了glut.h之外的3个头文件拷贝到D:\软件安装\VS2013\VC\include\GL目录下。

3.将freeglut/bin目录下的freeglut.dll文件拷贝到D:\软件安装\VS2013\VC\bin目录下。

4.将freeglut/lib目录下的freeglut.lib文件拷贝到D:\软件安装\VS2013\VC\lib目录下。

至此,freeglut配置完毕。

四.gltools配置  

1.将gltools\include目录下的11个头文件全部拷贝到D:\软件安装\VS2013\VC\include目录下(注意是include目录,而不是GL子目录)。

2.将gltools\lib目录下的gltools.lib文件拷贝到D:\软件安装\VS2013\VC\lib目录下,注意,这里gltools的lib文件最好自己生成一遍,不要直接用别人的,生成方法我放在后面单独讲。

至此,gltools配置完毕。 至此,OpenGL配置完毕。

生成gltools方法:

1.将gltools\include目录下的11个头文件全部拷贝到D:\软件安装\VS2013\VC\include目录下(注意是include目录,而不是GL子目录)。

2.启动VS2013,创建名为gltools的Win32应用程序。

3.选择“静态库”,将“预编译头”前的勾点掉。

4.将gltools\src目录下的6个文件文件拷贝到刚才新建的工程目录中(如本例,就是E:\gltools\gltools)。 5.“源文件”右键–>“添加”–>“现有项”,将4中的6个文件添加到工程中。

注意,这里的glew.c就是glew\src\glew-2.0.0\src目录下的glew.c文件。

6.生成–>生成gltools

编译时会出现一大推“dll链接不一致“的警告,但最终还是编译成功了,应该不用管他们吧。

7.在E:\gltools\Debug目录下可以找到生成的gltools.lib文件。 至此,gltools编译生成完毕。