【OpenGL 学习笔记】Nehe OpenGL + Visual Studio 2015 环境配置+ vs编译基础

前文:

http://blog.csdn.net/wly95/article/details/50838719

大概介绍了OpenGL库文件的下载,以及在visual studio 2015中的配置,并且调用了库中的一些函数试运行了一遍。


本章主要介绍OpenGL考古教程NEHE,在visual studio 2015中是如何生存的。


NEHE可以说是一个技术达人自己写的OpenGL的SDK或者说二级库,相比调用OpenGL最底层库的函数,nehe_sdk更加方便。

但是由于历史悠久,vc 6.0时代的许多遗留问题,放在vs2015中就是一个一个的坑,坑的我根本爬不起来。


准备工作,下载:

http://download.csdn.net/detail/wly95/9559568


==================vs编译基础=====================


想想还是先说这个吧。


http://blog.csdn.net/wly95/article/details/51321664

上文说了Linux系统中编译和链接的过程。

gcc就是一个编译器套件。


其实,在windows中程序的实现一样需要编译和链接。

只不过它的过程在visual studio中被一个绿色的播放键给包括了。


这让我们看不到整个程序的调试或者发布的过程。

就像一个黑箱子,结果只有成功和失败。

而且需要有大量的失败经验才知道,那些各种报错到底是个什么鬼。


打开OpenGL库文件,可以看到三种类型的文件:

*.h     头文件

*.lib    静态库文件

*.dll    动态链接库


通常情况下,头文件中包含的是各种函数的声明,库文件中是对应函数的定义。

头文件以c代码的形式保存,可以阅读,了解到各个函数的接口。

而库文件则是经过编译过后的二进制文件,无法阅读,因此我们只能调用库,不能修改库,因为它被封装了。


静态库:在链接阶段,会将编译的目标文件.obj 与引用到的库.lib 一起链接打包到可执行文件exe(也称为目标代码)中,程序运行时将不再需要该静态库。

因此最终链接成的可执行文件(.exe)体积较大。在Windows中一般以.lib为后缀名,在Linux中一般以.a为后缀名。


动态库:在链接阶段,动态库.dll并没有真正被连接到目标代码中,只是将这个动态库的声明链接到目标代码中(这样程序运行时才知道怎样使用这个动态库)&#x

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值