vkdt guide on apple silicon/intel

Would anyone be kind enough to share a walkthrough on setting up vkdt on a mac system, if at all possible? I understand that there is a hiccup in regards to Vulkan and Metal API and the programing-esque nature of all this is, as I’m finding out through research and failures, not my strong suit.

I’m running M1 or Intel, if either makes the approach more feasible.

My use case is to run Agx-Emulsion inside. I currently have Agx setup as the python launched Napari as well as in ART but I’m trying to figure out a system that nails best practices/best quality. The Darktable-Napari route certainly chews up a lot of disk space as well as time. ART is easier to manage file wise but the quality doesn’t quite land in the same place.

Any help is appreciated!

oh, somehow i missed this post completely. must have been a busy week or something.

anyways, the best guide i have is the nightly build instructions for the ci on github. it boils down to:

brew install make glfw3 vulkan-validationlayers vulkan-headers rust

clone the vkdt repository (no --recursive or anything required, just clone)

make sure gnu make is used during the build:

export PATH="/usr/local/opt/make/libexec/gnubin:$PATH"

then build:

make

to run, you need to install the official vulkan sdk from the lunarg website, maybe like so: LunarXchange

i didn’t understand their install python thing so i had to set all the paths manually, like in the 90s for java :slight_smile:

then it worked without any obvious issues on an M1 (no moltenvk manual install or additional env var setting required).

2 Likes

Hi @hanatos,

macOS Tahoe, M4 Pro.

I followed the above instructions, make succeeds but then when I run vkdt I get:

[gui] vkdt 0.9.99-958-ge3be83ad (c) 2020--2025 johannes hanika
[gui] glfwGetVersionString() : 3.4.0 Cocoa NSGL Null EGL OSMesa monotonic dynamic
[ERR] glfwVulkanSupported(): no vulkan support found: (null)
[ERR] failed to init gui/swapchain

Do I need to set some environment variable to point VKDT to the installation path of the Vulkan sdk?

Thanks for your help!

iirc, that’s what i did (don’t have access to macintosh computers right now):

export VULKAN_SDK=/wherever/i/installed/it/i/forgot
export PATH=$VULKAN_SDK/bin:$PATH
export DYLD_LIBRARY_PATH=$VULKAN_SDK/lib:$DYLD_LIBRARY_PATH
export VK_ICD_FILENAMES=$VULKAN_SDK/share/vulkan/icd.d/MoltenVK_icd.json
export VK_LAYER_PATH=$VULKAN_SDK/share/vulkan/explicit_layer.d
1 Like

Thanks a lot, that did it! :slight_smile:

1 Like

I’ve tried installing VKDT, but I’m not tech-savvy at all, especially not in macos environment. Can anyone give me a sort of explain-it-like-I’m-5 here?

Nevermind, got it working through a long conversation with chatgpt!

I’ve noticed there’s a MAC OS dmg in the nightly builds. Are there future plans for this to work out of the box? :slight_smile:

yes. but the dmg still has some dso dependency problems. and setting this up requires some time investment ideally by someone who knows macintosh computers or at least has access to one.

i think that intel and arm macintoshs require different treatment too.

1 Like