protonscr

[Request] - how to compile vkd3d-proton on Windows

vkd3dclosed
HansKristian-Work/vkd3d-proton#3137 · opened 2026-07-01 by sk8rthug · updated 2026-07-27 · 6 comments · github
Ssk8rthug 2026-07-01 github

Hi. Would anybody please provide a step-by-step tutorial on how to build this project on Windows?
I have read 'Building vkd3d-proton' section, but this is not enough, still don't understand what am I supposed to do. I have found a tutorial for Linux on reddit - need something similar, but for Windows.

KK0bin 2026-07-01 github

There's no point in building vkd3d-Proton on Windows. It won't work with most games anyway due to games insisting to load dxgi.dll from System32 (same thing as with DXVK D3D11). Even if that isn't a problem, it almost certainly won't work on any Windows Vulkan driver except maybe Nvidias (because that's essentially the same one as their Linux driver). And even if we ignore all of that and it does work, it won't come with the magical performance improvement that you're probably hoping for.

Ssk8rthug 2026-07-01 github

There's no point in building vkd3d-Proton on Windows.

Seems like you are not aware, but launching dx12 games using vkd3d-proton on Windows became a common practice to fix errors and performance issues in various games (same thing as with DXVK D3D11). Anyway you are talking about using vkd3d-proton on Windows, not building. I'd like to tweak some things and compile it.

HHansKristian-Work maintainer 2026-07-02 github

Build environments on Windows are very brittle and annoying to support. Meson on Windows is not frictionless. It mostly depends on if you need to use MSVC or msys2/MinGW here.

For MSVC, you'll probably just need to launch the x64 MSVC development console and run meson setup in there to setup a VS project that can be built in Visual Studio.

Ssk8rthug 2026-07-08 github

Ok, I have installed Meson using this guide.
Also installed MinGW-W64
Tried building the project in both MSVS and MinGW-W64 - get the same error in both cases

D:\vkd3d-proton-master>meson setup --cross-file build-win64.txt --buildtype rele
ase --prefix D:\vkd3d-proton-master build.64
The Meson build system
Version: 1.11.0
Source dir: D:\vkd3d-proton-master
Build dir: D:\vkd3d-proton-master\build.64
Build type: cross build
Project name: vkd3d-proton
Project version: 3.0.1
C compiler for the host machine: x86_64-w64-mingw32-gcc (gcc 16.1.0 "x86_64-w64-
mingw32-gcc (x86_64-posix-seh-rev1, Built by MinGW-Builds project) 16.1.0")
C linker for the host machine: x86_64-w64-mingw32-gcc ld.bfd 2.46.0.20260210

meson.build:2:0: ERROR: Unknown linker(s): [['x86_64-w64-mingw32-ar']]
The following exception(s) were encountered:
Running `x86_64-w64-mingw32-ar --version` gave "[WinError 2] The system cannot find the path specified

What am I doing wrong?

Ssk8rthug 2026-07-08 github

I have fixed it by editing build-win64.txt - changed x86_64-w64-mingw32-ar to x86_64-w64-mingw32-gcc-ar (because there is no such file as x86_64-w64-mingw32-ar.exe in \mingw64\bin directory). Anyway, now I get another error:

meson.build:66:26: ERROR: Include dir ./khronos/Vulkan-Headers/include does not
exist.

This directory exists. Don't know what it wants.

I would like to try the "simple way" described in the building section

Inside the vkd3d-proton directory, run:
./package-release.sh master /your/target/directory --no-package

But I don't understand how to use it on Windows.

HHansKristian-Work maintainer 2026-07-08 github

https://github.com/HansKristian-Work/vkd3d-proton/pull/3154 should explain it. Builds fine for me from a clean checkout.

Upstream links

DLLs