Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Vulkan SDK installation in Windows seems to be still required #9244

Open
DanielAtCosmicDNA opened this issue Jan 16, 2025 · 1 comment
Open

Comments

@DanielAtCosmicDNA
Copy link

DanielAtCosmicDNA commented Jan 16, 2025

Environment:

  • OS: Windows 11 PRO 22H2
  • GPU and driver version: Quadro M1000M driver Nvidia 566.03
  • SDK or header version if building from repo: I am using vulkan vcpkg package together with a fork from Vulkan-Samples repository
  • Options enabled (synchronization, best practices, etc.):
    I have in debug mode _VKB_VALIDATION_LAYERS_ and _VKB_VALIDATION_LAYERS_BEST_PRACTICES_ set to true.

I have added VK_LAYER_ADD_PATH to the path where VkLayer_khronos_validation.json is in the CMAKE_BINARY_DIR/vcpkg_installed/x64-windows/bin.

Describe the Issue

The problem I am facing is that the hpp_push_descriptors sample code is not able to find the validation layers when I uninstall Vulkan SDK and rely solely on the vulkan validation layers and vulkan packages from vcpkg. When I reinstall Vulkan SDK, it then is able to find validation layers again...

Expected behavior

I would expect the validation layers to detect them regardless if vulkan SDK is installed in the host machine and utilise vulkan from vulkan vcpkg.

Reproduction
To reproduce the problem, make sure you have uninstalled Vulkan SDK in Windows and then:

  1. clone the Vulkan-Samples with vcpkg repo.
  2. run vcpkg install
  3. run cmake --preset windows-release
  4. run cmake --build --preset windows-release
  5. run the executable with vulkan_samples command only - the other args will not affect as it will always select the hpp_push_descriptors sample.

Repeat the process and compare with Vulkan SDK installed.

@charles-lunarg
Copy link
Contributor

VK_LAYER_ADD_PATH isn't sufficient if the build of Vulkan-ValidationLayers from vcpkg is creating a manifest with a "default search path" library path, eg "foo.dll" instead of "./foo.dll" in the "library_path" field.

If you add the path of the .dll file to PATH, then it should work.

If you run the samples with the environment variable VK_LOADER_DEBUG=all then logging about the missing dll should be printed. And if what I said above isn't the issue, this log will likely reveal what the actual issue is.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants