aejsmith / vkdevicechooser

Vulkan layer to force a specific device to be used
MIT License
77 stars 18 forks source link

Vulkan vk_layer_dispatch_table header located in a different spot than the meson build expects on Fedora 34 #15

Open backspace119 opened 3 years ago

backspace119 commented 3 years ago

After installing the pre-requisites on Fedora 34 I ran into an issue with the build not finding vk_layer_dispatch_table.h. Upon exploring the installed packages header files I found the file is located at "vulkan/vulkan/vk_layer_dispatch_table.h" instead of "vulkan/vk_layer_dispatch_table.h". I'm attempting to solve the issue on my own for myself, but thought I'd leave an issue to make you aware, or maybe my system is very special and decided to nest it this way.

FluffyPuppyKasey commented 2 years ago

Fedora 36, issue still exists. The issue is simple to solve:

Within meson.build, change the line that reads

if not cpp.has_header('vulkan/vk_layer_dispatch_table.h')

To

if not cpp.has_header('vulkan/vulkan/vk_layer_dispatch_table.h')

Then change the last #include to read:

#include "vulkan/vulkan/vk_layer_dispatch_table.h"
chanokin commented 4 months ago

Just a bump on the comment, in Ubuntu 22.04 the file is now under vulkan/generated