欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 健康 > 美食 > Win vscode 配置OpenGL时 undefined reference to `glfwInit‘

Win vscode 配置OpenGL时 undefined reference to `glfwInit‘

2025/2/24 0:34:25 来源:https://blog.csdn.net/gongziwushuang/article/details/143632622  浏览:    关键词:Win vscode 配置OpenGL时 undefined reference to `glfwInit‘

Win vscode 配置OpenGL时 undefined reference to `glfwInit'

  • Win vscode 配置OpenGL时 undefined reference to `glfwInit'
      • 现象
      • 原因
      • 解决方案

Win vscode 配置OpenGL时 undefined reference to `glfwInit’

现象

win 上面用vscode 配置OpenGL 时会报一下错误

g++ -std=c++17 -Wall -Wextra -g -Iinclude -o output\main.exe src/main.o  -Llib -lglad -lglfw3
src/main.o: In function `main':
D:\workspace\c\2024\opengl/src/main.cpp:14: undefined reference to `glfwInit'
D:\workspace\c\2024\opengl/src/main.cpp:15: undefined reference to `glfwWindowHint'
D:\workspace\c\2024\opengl/src/main.cpp:16: undefined reference to `glfwWindowHint'
D:\workspace\c\2024\opengl/src/main.cpp:17: undefined reference to `glfwWindowHint'
D:\workspace\c\2024\opengl/src/main.cpp:19: undefined reference to `glfwCreateWindow'
D:\workspace\c\2024\opengl/src/main.cpp:23: undefined reference to `glfwTerminate'
D:\workspace\c\2024\opengl/src/main.cpp:26: undefined reference to `glfwMakeContextCurrent'
D:\workspace\c\2024\opengl/src/main.cpp:27: undefined reference to `glfwSetFramebufferSizeCallback'
D:\workspace\c\2024\opengl/src/main.cpp:29: undefined reference to `glfwGetProcAddress'
D:\workspace\c\2024\opengl/src/main.cpp:35: undefined reference to `glfwWindowShouldClose'
D:\workspace\c\2024\opengl/src/main.cpp:38: undefined reference to `glfwSwapBuffers'
D:\workspace\c\2024\opengl/src/main.cpp:39: undefined reference to `glfwPollEvents'
D:\workspace\c\2024\opengl/src/main.cpp:42: undefined reference to `glfwTerminate'
src/main.o: In function `Z12processInputP10GLFWwindow':
D:\workspace\c\2024\opengl/src/main.cpp:48: undefined reference to `glfwGetKey'
D:\workspace\c\2024\opengl/src/main.cpp:49: undefined reference to `glfwSetWindowShouldClose'
collect2.exe: error: ld returned 1 exit status
Makefile:78: recipe for target 'main.exe' failed
make: *** [main.exe] Error 1

原因

是因为vscode中使用了MinGWg++作为项目的编译器,和下载的预编译glfw-3.4.bin.WIN64\lib-mingw-w64中的libglfw3.a不兼容导致的。

解决方案

下载glfw源码,使用MinGW中的g++自己编译出来的libglfw3.a放进自己项目的 lib文件夹中

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

热搜词