首页 > 解决方案 > vkGetPhysicalDeviceQueueFamilyProperties 段错误

问题描述

我已经开始使用 Vulkan/C++ 进行编程,并且遇到了线路出现段错误的问题vkGetPhysicalDeviceQueueFamilyProperties( physical_device, &queue_family_count, nullptr );

queue_family_count被初始化并声明为uint32_t queue_family_count = 0;并且physical_deviceconst VkPhysicalDevicevkEnumeratePhysicalDevices.

其他需要VkPhysicalDevice诸如vkGetPhysicalDeviceProperties工作的功能,所以该设备似乎是有效的。

vkGetPhysicalDeviceQueueFamilyProperties装载了PFN_vkGetPhysicalDeviceQueueFamilyProperties vkGetPhysicalDeviceQueueFamilyProperties = (PFN_vkGetPhysicalDeviceQueueFamilyProperties) vkGetInstanceProcAddr( instance, "vkGetPhysicalDeviceQueueFamilyProperties" );

不知道是不是和操作系统有关,所以这里有一些信息:
OS: Arch Linux
WM: i3-gaps,
Kernel: x86_64 Linux 4.17.2-1-ARCH
名字physical_device是:Intel( R) Haswell Mobile(仅由 退回的设备vkEnumeratePhysicalDevices)。

标签: c++linuxsegmentation-faultvulkan

解决方案


pacman -Syu在今天之后自行修复。


推荐阅读