opengl常见问题锦集
话不多说,我把这几次做实验遇到的问题,最终顺利解决的方法分享给大家,希望能在改bug的路上一路顺风。
第一个:出现“exit”错误
遇到这类错误的,需要在最前面添加#include<Windows.h>
第二个:解决 LINK : fatal error LNK1104: 无法打开文件“freeglutd.lib”问题
以为缺少了freeglutd.lib文件,hhh,之后才发现压根没有这个文件。
解决办法:
鼠标右键单击项目,选择属性,出现如下图:
找到C/C++ --->预处理器--->点开预处理器定义,点编辑
添加 NDEBUG 点击确定即可,在Debug环境下运行的程序。
第三个:error LNK2019: 无法解析的外部符号 aaa@qq.com
1>------ 已启动生成: 项目: ConsoleApplication4, 配置: Debug Win32 ------
1> 源.cpp
1>源.obj : error LNK2019: 无法解析的外部符号 aaa@qq.com,该符号在函数 aaa@qq.com 中被引用
1>源.obj : error LNK2019: 无法解析的外部符号 aaa@qq.com,该符号在函数 aaa@qq.com 中被引用
1>D:\Program Files\Visual Studio Ultimate 2013\Projects\ConsoleApplication4\Debug\ConsoleApplication4.exe : fatal error LNK1120: 2 个无法解析的外部命令
========== 生成: 成功 0 个,失败 1 个,最新 0 个,跳过 0 个 ==========
解决方法:
在#include <GL/glut.h>前面加上了一句:#define GLUT_DISABLE_ATEXIT_HACK
第四个:MSVCRTD.lib(crtexew.obj) : error LNK2019: 无法解析的外部符号 aaa@qq.com,该符号在函数 ___tmainC
MSVCRTD.lib(crtexew.obj) : error LNK2019: 无法解析的外部符号 aaa@qq.com,该符号在函数 ___tmainCRTStartup 中被引用
Debug\jk.exe : fatal error LNK1120: 1 个无法解析的外部命令
error LNK2001: unresolved external symbol aaa@qq.com
debug/main.exe:fatal error LNK 1120:1 unresolved externals
error executing link.exe;
这个主要是由于找不到主函数,入口函数指定不当,很显然运行时找不到配合函数,它就会报告错误。
修改设置适应你的需求即可。
需要windows程序:
1.右击项目->属性, 弹出属性设置页
2.在左边栏中依次选择:配置设置->C/C++->预处理器,再在右边栏的“预处理器定义”’对应的项中删除_CONSOLE, 添加_WINDOWS.
3.在左边栏中依次选择:配置设置->链接器->系统,再在右边栏的“子系统”对应的项改为“窗口 (/SUBSYSTEM:WINDOWS)”
需要控制台程序:
1.右键项目->属性, 弹出属性设置窗口
2.在左边栏中依次选择:配置设置->C/C++->预处理器,再在右边栏的“预处理器定义”对应的项中删除_WINDOWS, 添加_CONSOLE.
3.在左边栏中依次选择:配置设置->链接器->系统,再在右边栏的“子系统”对应的项改为“控制台 (/SUBSYSTEM:CONSOLE)”
以上就是我最近几次实验遇到的问题,希望对有同样的你有用,仅供参考。