Windows OS上的静态链接

Static linking on Windows OS

本文关键字:静态 链接 OS Windows      更新时间:2023-10-16

我正在使用lunarg sdk.i在lib目录中找到 VKstatic.1.lib。与该lib链接时,而不是vulkan-1.lib,我会得到以下链接器错误:

vkstatic.1.lib(loader.obj):错误lnk2019:未解决的外部符号 __imp_pathisrelativea在功能loader_platform_is_path_absolute中引用

使用VS2013和VS2015,64位项目。我看到Pathisrelativea来自Windows SDK.I设置链接器 ->系统为Windows (/SUBSYSTEM:WINDOWS),但不能解决错误。静态链接是否需要一些预处理器标志?我还没有找到有关如何在静态上链接vulkan的任何文档。

更新:

按照理查德·克里特(Richard Critten)的建议添加了Shlwapi.lib。这解决了V120编译器的链接错误,但为V140带来了更多错误。

我找到了一种在此处(在其中一个评论中)在Visual Studio 2017上解决错误的方法:vkstatic.1.lib不链接

您基本上也需要链接到cfgmgr32.lib(我不需要链接到Shlwapi.lib)。