Visual Studio 2019中C++ OpenGL项目无法构建问题求助
问题根因
- 核心报错是GLAD相关符号未找到:GLAD的头文件只提供了函数声明,你没有将GLAD配套的
glad.c源文件加入项目参与编译链接,导致链接器找不到函数的实现。 - LNK4098警告属于运行库冲突:你项目使用的C/C++运行库版本,和你引入的第三方库(大概率是预编译的GLFW)使用的运行库版本不一致,触发了冲突警告。
修复步骤
- 修复GLAD链接错误:
找到你生成GLAD时输出的文件包,进入src目录找到glad.c文件,将该文件复制到你的项目根目录后,在VS解决方案资源管理器中右键项目→【添加】→【现有项】,选中glad.c添加到项目中,重新构建即可解决LNK2019、LNK2001错误。 - 修复LNK4098警告(可选,不影响程序运行):
右键项目→【属性】,先确认顶部的配置为Debug、平台为x64,再进入C/C++→代码生成→运行库,将选项调整为和你使用的GLFW库一致的版本:官方预编译的GLFW Debug版本对应多线程调试DLL(/MDd),Release版本对应多线程DLL(/MD),修改后重新构建即可消除警告。
代码潜在问题提示
你代码中苹果兼容部分的宏存在拼写错误,后续要兼容Mac系统时需要修改:
原代码:
glfwWindowHint(GLFW_OPENGL_FOWARD_COPMPAT, GL_TRUE);
修正为:
glfwWindowHint(GLFW_OPENGL_FORWARD_COMPAT, GL_TRUE);
内容的提问来源于stack exchange,提问作者JakeOfNoob
相关产品推荐
相关产品推荐

