xwin icon indicating copy to clipboard operation
xwin copied to clipboard

Casing mismatch for WinSDK `Include` and `Lib` directories

Open Saancreed opened this issue 1 year ago • 1 comments

Hi,

I'm trying to use xwin to cross-compile a C++ project using clang-cl with /winsysroot. I'm preparing the sysroot as follows:

xwin_version=0.6.6-rc.2
curl -sL "https://github.com/Jake-Shadle/xwin/releases/download/${xwin_version}/xwin-${xwin_version}-x86_64-unknown-linux-musl.tar.gz" | bsdtar -xf-
"xwin-${xwin_version}-x86_64-unknown-linux-musl/xwin" \
          --temp --accept-license \
          --arch x86_64 \
          splat \
          --preserve-ms-arch-notation \
          --use-winsysroot-style \
          --output /tmp/winsysroot

Which works almost perfectly, but…

$ ls /tmp/winsysroot/Windows\ Kits/10
include  lib

This doesn't match clang-cl's expectations because it's looking specifically for Include and Lib, which matches Windows SDK installation from my Windows system. A quick ln -s include Include; ln -s lib Lib solves my issue but I'm wondering: why is this different from my Windows VS setup? Shouldn't directories already be named Include and Lib, possibly with lowercase symlinks pointing to them if anything depends on that, so this extra step isn't needed?

Saancreed avatar Oct 24 '24 19:10 Saancreed

thank you, this was incredibly helpful

seandunaway avatar Jan 05 '25 02:01 seandunaway

Yeah this is required for xwin to work with Clang

RossSmyth avatar Jul 16 '25 16:07 RossSmyth