安装好vulkan后,打开以前的项目编译时,发现QtCreator会自动检查vulkan的路径,尽管我这个项目根本就没有用到vulkan,报错内容如下,
C:\Qt\qt5\5.15.0\msvc2019_64\mkspecs\features\win32\windows_vulkan_sdk.prf:8: error: contains(): Encountered invalid regular expression 'D:\VulkanSDK\1.2.198.1/Include'.
根据报错的地方,找到这里,
C:\Qt\qt5\5.15.0\msvc2019_64\mkspecs\features\win32\windows_vulkan_sdk.prf
内容如下,
isEmpty(QMAKE_INCDIR_VULKAN) {
# Pick up the VULKAN_SDK env var set by the LunarG SDK so that the Vulkan
# headers are found out-of-the-box on typical Windows setups.
QMAKE_INCDIR_VULKAN = $$(VULKAN_SDK)/include
# Do not add default include paths as that can knock std headers
# out of their stride due to their usage of #include_next.
contains(QMAKE_DEFAULT_INCDIRS, $$QMAKE_INCDIR_VULKAN): \
QMAKE_INCDIR_VULKAN =
# Do not export the include dir but resolve it on every qmake call.
QMAKE_EXPORT_INCDIR_VULKAN = -
}
于是到环境变量中去找,发现vulkan安装时,会自动定义两个环境变量,如下图所示,
其中一个叫VK_SDK_PATH,一个叫VULKAN_SDK,这两个都指向同一个路径:
D:\VulkanSDK\1.2.198.1
注意这里都是反斜杠。悲催的QtCreator只会进行斜杠的检查,所以报错。
办法1要消除这个报错,把路径中改成斜杠就可以了,如下,
D:/VulkanSDK/1.2.198.1
办法2
把VK_SDK_PATH和VULKAN_SDK直接删除;不使用vulkan时万事大吉;当QtCreator中需要再使用的时候,重新定义路径,如我的上一个贴子所示,
QtCreator+Vulkan初体验_高精度计算机视觉的博客-CSDN博客
本文结束。