计算机图形学的实验一头雾水,老师让我们在VC6的环境下配置好openGL的环境,三步两步就弄好了,无非是把库文件和头文件导入就行了。但是回到自己的笔记本上的VS2013好像就没那么简单了。 首先我不知道上课考试给的文件还适不适合,所以又从网上找到了VS2013的配置文件,这里要感谢CSDN的 the__blue__sky 老师,他的配置说明详细完整,让我初步完成了配置。下面是他的原文,现转贴如下,以飨读者。 参考资料:《Visual C++ 编译链接信息手册》 OpenGL配置文件在上传资源中 笔者的开发环境是:Windows7旗舰版 VS2013 动态DLL库的配置 路径:C:\Windows\System32 与Opengl有关的库一共有7个 glu32.dll和opengl32.dll在C:\Windows\System32\下存在,所以没有复制 其他库是glew32.dll,GLU.DLL,GLUT.DLL,GLUT32.DLL,OPENGL.DLL 静态Lib库的配置 路径:D:\Program Files\Microsoft Visual Studio 12.0\VC\lib 加入的文件有G开头的文件以及open开头的文件,一共有10个文件 它们是:GLAUX.LIB,glew32.lib,glew32s.lib,glu.lib,GLU32.LIB,glui32.lib,glut.lib,GLUT32.LIB,opengl.lib,OPENGL32.LIB 头文件的配置 路径:D:\Program Files\Microsoft Visual Studio 12.0\VC\include\GL GL文件夹是专门储存OpenGl头文件 在工程属性中设置
在 VC 中打开项目->属性对话框进行如下设置: 注意事项:开发基于MFC的OpenGL程序时,把glut32.lib去掉,否则报错。 报错内容是:error LNK1104: 无法打开文件“glut32.lib” 一种解释是: MFC中的视图源文件不包含#include "gl/glut.h",自然是用不到glut32.lib
#include "gl/gl.h" 当我做完这些后,程序运行时又出现了以下错误:
1>test.obj : error LNK2019: 无法解析的外部符号
__imp____glutInitWithExit@12
,该符号在函数
_glutInit_ATEXIT_HACK@8
中被引用
后来查看到 孤鹜齐飞的博客 ,说“ 在程序的最上面增加一行 #define GLUT_DISABLE_ATEXIT_HACK 就可以了”,测试之后问题好像没有解决, 之后又参考到 飞扬飞扬xyz的博客 : 解决方法: 1.工程属性->配置(设为‘所有配置’)->配置属性->C/C++->预处理器定义(设为‘GLUT_BUILDING_LIB’)
2.工程属性->配置(设为‘活动(Debug)’)->链接器->系统->子系统(设为‘控制台(/SUBSYSTEM:CONSOLE)’)
问题终于圆满解决了,在此对以上的老师们表示感谢。 |
|