遵循Vulkan教程搭建开发环境时出现大量LNK2019错误如何解决?
错误原因
你遇到的所有报错均为Windows系统基础API链接缺失导致,你使用的glfw3.lib依赖Windows平台的系统底层库,但当前项目配置未将对应库加入链接列表,才会出现unresolved external symbol类报错。
解决方法
如果你使用Visual Studio手动配置项目
按以下步骤修改配置:
- 打开项目的「属性页」,选择对应你编译目标的配置(Debug/Release、x86/x64)
- 依次进入「配置属性」→「链接器」→「输入」→「附加依赖项」
- 新增以下系统库到列表中:
user32.libgdi32.libshell32.lib
如果修改后仍有同类报错,可按需额外添加advapi32.lib、winmm.lib。
如果你使用CMake构建项目
在CMakeLists.txt的目标链接配置段,加入Windows系统库的链接逻辑即可,示例如下:
if (WIN32) target_link_libraries(你的项目名 PRIVATE user32 gdi32 shell32) endif()
补充排查点
如果调整配置后仍报错,可检查两项内容:
- 你使用的glfw3.lib的架构(x86/x64)是否和当前项目编译的目标架构一致
- 确认你用的GLFW库类型:如果是静态编译版本的GLFW必须手动添加上述系统依赖,如果是动态版本(配套dll使用)一般不需要额外加系统依赖,可更换动态版本GLFW再尝试。
内容的提问来源于stack exchange,提问作者keenest
相关产品推荐
相关产品推荐

