您的位置:首页 > 运维架构

[OpenGL]移植OpenGL项目遇到的问题记录

2017-11-17 17:09 127 查看
最近在移植一个opengl的项目,是之前师兄留下的,用vs2005写的,简直不能忍啊。。。(摔.jpg),正好最近要用到相关的技术,就在上面改一下了,移植的过程中遇到三个问题,下面做个记录:

IDE: Visual Studio 2017

操作系统:windows10 专业版

问题一:无法打开gl\glut.h,gl\glaux.h,或者“auxSolidSphere”: 找不到标识符

出现问题的原因: 这个问题的出现是因为相应环境没有配置好

解决办法:下载openGL文件放到以下目录,配置好环境

下载路径一: 官方下载OpenGL文件(有一些头文件没有

http://www.opengl.org/resources/libraries/glut/glutdlls37beta.zip

下载路径二: 在CSDN上下载(我自用的,比较全

http://download.csdn.net/download/wangyijieonline/10123162

然后得到几种文件:

.dll、.lib、.h

找到目录..\VC\Tools\MSVC\14.10.25017\include\gl(没有的话就建立一个)。 将.h放到里面。

找到目录..\VC\Tools\MSVC\14.10.25017\lib\x86 将.lib放到里面。

最后把.dll放到

C:\Windows\system32文件夹内(32位系统)或‪C:\Windows\SysWOW64(64位系统)。

问题二:模块对于SAFESEH 映像是不安全的

出现问题的原因: 链接器有毒

解决办法:

https://jingyan.baidu.com/article/47a29f24334312c01423992e.html

在项目属性->链接器->命令行->“其它选项(D)”框中将 /SAFESEH:NO 加入,然后点击应用

问题三

glaux.lib(tk.obj) : error LNK2019: 无法解析的外部符号 _sscanf,该符号在函数 _GetRegistrySysColors@8 中被引用

glaux.lib(tk.obj) : error LNK2019: 无法解析的外部符号 _vsprintf,该符号在函数 _PrintMessage 中被引用

出现问题的原因: 链接器有剧毒,可能是和系统的某些函数冲突了

解决办法:

在项目属性->链接器->输入->附加依赖项中添加依赖项 legacy_stdio_definitions.lib;(注意此处的分号不能少)
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐