error C2381: “exit”: 重定义;__declspec(noreturn) 不同

问题:

error C2381: “exit” : 重定义;__declspec(noreturn) 不同

解决办法:

 调换一下头文件的包含次序:

#include <GL/glut.h>

#include <stdlib.h>

改成:
#include <stdlib.h>   

#include <GL/glut.h>

问题:

编译OpenGL工程时,在lib库,dll文件都放对位置的情况下,常出现如下的编译错误:
1>------ 已启动生成: 项目: ConsoleApplication4, 配置: Debug Win32 ------
1> 源.cpp
1>源.obj : error LNK2019: 无法解析的外部符号 __imp____glutInitWithExit@12,该符号在函数 _glutInit_ATEXIT_HACK@8 中被引用
1>源.obj : error LNK2019: 无法解析的外部符号 __imp____glutCreateWindowWithExit@8,该符号在函数 _glutCreateWindow_ATEXIT_HACK@4 中被引用
1>D:\Program Files\Visual Studio Ultimate 2013\Projects\ConsoleApplication4\Debug\ConsoleApplication4.exe : fatal error LNK1120: 2 个无法解析的外部命令

解决办法:

原因是:
glut.h的注释:
   Note that the __glut*WithExit routines should NEVER be called directly.
   To avoid the atexit workaround, #define GLUT_DISABLE_ATEXIT_HACK. 
解决方案:

在#include <GL/glut.h>前面加上了一句:
#define GLUT_DISABLE_ATEXIT_HACK

posted @   rainbow70626  阅读(1203)  评论(0编辑  收藏  举报
编辑推荐:
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
阅读排行:
· 终于写完轮子一部分:tcp代理 了,记录一下
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
历史上的今天:
2018-04-18 [转]C结构体之位域(位段)
2017-04-18 解决 vs2010问题 error MSB8008: 指定的平台工具集(v110)未安装或无效
点击右上角即可分享
微信分享提示