zig icon indicating copy to clipboard operation
zig copied to clipboard

[WIP] src/windows_sdk.cpp: port to Zig

Open BratishkaErik opened this issue 1 year ago • 19 comments

Supercedes https://github.com/ziglang/zig/pull/15560. Resolves https://github.com/ziglang/zig/issues/6363.

I tried to touch other files as little as possible (since idk what core team wants to do with new zig code), so most of the errors are shrinked in the end. Works fine on my Windows 11 machine, needs more testing on other machines and Windows 8.1. Here's output of zig.exe libc (updated with each rebase):

it's ```ini smth ``` if you want to send similar report from your machine here.

warning(RegistryUtf8.getString): subkey =
warning(RegistryUtf8.getString): value_name = InstallationFolder
warning(RegistryUtf16Le.getString): value_utf16le_buf_size from first call = 82
warning: alloc - success - len: 82, ptr_align: 1
warning(RegistryUtf16Le.getString): value_utf16le_buf_size from second call = 80
warning(RegistryUtf16Le.getString): value_utf16le.len = 39 (without terminating character), so value_utf16le_buf actual size = 78 (without terminating character)
warning: shrink - success - 82 to 78, buf_align: 1
warning: alloc - success - len: 39, ptr_align: 0
warning: shrink - success - 39 to 39, buf_align: 0
warning(RegistryUtf8.getString): value_utf8 = C:\Program Files (x86)\Windows Kits\10\
warning: free - len: 78
warning(Windows10Sdk.find.path10): path_maybe_with_trailing_slash = C:\Program Files (x86)\Windows Kits\10\
warning: shrink - success - 39 to 38, buf_align: 0
warning(Windows10Sdk.find.path10): path_without_trailing_slash = C:\Program Files (x86)\Windows Kits\10
warning(Windows10Sdk.find): path = C:\Program Files (x86)\Windows Kits\10
warning(RegistryUtf8.getString): subkey =
warning(RegistryUtf8.getString): value_name = ProductVersion
warning(RegistryUtf16Le.getString): value_utf16le_buf_size from first call = 24
warning: alloc - success - len: 24, ptr_align: 1
warning(RegistryUtf16Le.getString): value_utf16le_buf_size from second call = 22
warning(RegistryUtf16Le.getString): value_utf16le.len = 10 (without terminating character), so value_utf16le_buf actual size = 20 (without terminating character)
warning: shrink - success - 24 to 20, buf_align: 1
warning: alloc - success - len: 10, ptr_align: 0
warning: shrink - success - 10 to 10, buf_align: 0
warning(RegistryUtf8.getString): value_utf8 = 10.0.20348
warning: free - len: 20
warning(Windows10Sdk.find.version10): version_without_0 = 10.0.20348
warning: expand - failure - 10 to 23, buf_align: 0
warning: alloc - success - len: 23, ptr_align: 0
warning: free - len: 10
warning: shrink - success - 23 to 12, buf_align: 0
warning(Windows10Sdk.find.version10): version_with_0 = 10.0.20348.0
warning(Windows10Sdk.find): version = 10.0.20348.0
warning(ZigWindowsSDK.find): windows10sdk is null = false
warning(ZigWindowsSDK.find): windows10sdk.path = C:\Program Files (x86)\Windows Kits\10, windows10sdk.version = 10.0.20348.0
warning(RegistryUtf8.getString): subkey =
warning(RegistryUtf8.getString): value_name = KitsRoot81
warning(RegistryUtf16Le.getString): value_utf16le_buf_size from first call = 0
warning(ZigWindowsSDK.find): windows81sdk is null = true
warning: alloc - success - len: 27, ptr_align: 0
warning: expand - failure - 27 to 48, buf_align: 0
warning: alloc - success - len: 48, ptr_align: 0
warning: free - len: 27
warning: shrink - success - 48 to 31, buf_align: 0
warning: alloc - success - len: 55, ptr_align: 0
warning: free - len: 31
warning(MsvcLibDir.findViaRegistry): visualstudio_folder_path = C:\Users\Эрик\AppData\Local\Microsoft\VisualStudio\
warning(MsvcLibDir.findViaRegistry.vs_version.iterate_folder): subfolder_name = 17.0_9e9cbb98
warning(MsvcLibDir.findViaRegistry.vs_version.iterate_folder): subfolder_name (before replacing _ with .) = 17.0_9e9cbb98
warning(MsvcLibDir.findViaRegistry.vs_version.iterate_folder): subfolder_name (after  replacing _ with .) = 17.0.9e9cbb98
warning(MsvcLibDir.findViaRegistry.vs_version.iterate_folder): subfolder_name_normalized = 17.0.0+build.9e9cbb98
warning(MsvcLibDir.findViaRegistry.vs_version.iterate_folder): subfolder_name_normalized as SemVer = 17.0.0+build.9e9cbb98
warning(MsvcLibDir.findViaRegistry.vs_version.iterate_folder): previous_subfolder_name_normalized = 0.0.0+build.0
warning(MsvcLibDir.findViaRegistry.vs_version.iterate_folder): previous_subfolder_name_normalized as SemVer = 0.0.0+build.0
warning(MsvcLibDir.findViaRegistry.vs_version.iterate_folder): subfolder_name = Packages
warning(MsvcLibDir.findViaRegistry.vs_version.iterate_folder): subfolder_name_normalized = Packages.0.0
warning(MsvcLibDir.findViaRegistry.vs_version.iterate_folder): subfolder_name_normalized as SemVer = error.InvalidVersion
warning(MsvcLibDir.findViaRegistry.vs_version.iterate_folder): subfolder_name = SettingsLogs
warning(MsvcLibDir.findViaRegistry.vs_version.iterate_folder): subfolder_name_normalized = SettingsLogs.0.0
warning(MsvcLibDir.findViaRegistry.vs_version.iterate_folder): subfolder_name_normalized as SemVer = error.InvalidVersion
warning(MsvcLibDir.findViaRegistry.vs_version): version = 17.0_9e9cbb98
warning(MsvcLibDir.findViaRegistry): vs_version = 17.0_9e9cbb98
warning: alloc - success - len: 88, ptr_align: 0
warning(MsvcLibDir.findViaRegistry): privateregistry_absolute_path = C:\Users\Эрик\AppData\Local\Microsoft\VisualStudio\17.0_9e9cbb98\privateregistry.bin
warning(RegistryUtf16Le.loadFromPath): return_code = SUCCESS
warning(MsvcLibDir.findViaRegistry): loadFromPath successfully!
warning: alloc - success - len: 52, ptr_align: 0
warning(MsvcLibDir.findViaRegistry): config_subkey = Software\Microsoft\VisualStudio\17.0_9e9cbb98_Config
warning(RegistryUtf8.getString): subkey = Software\Microsoft\VisualStudio\17.0_9e9cbb98_Config
warning(RegistryUtf8.getString): value_name = Source Directories
warning(RegistryUtf16Le.getString): value_utf16le_buf_size from first call = 3088
warning: alloc - success - len: 3088, ptr_align: 1
warning(RegistryUtf16Le.getString): value_utf16le_buf_size from second call = 3086
warning(RegistryUtf16Le.getString): value_utf16le.len = 1542 (without terminating character), so value_utf16le_buf actual size = 3084 (without terminating character)
warning: shrink - success - 3088 to 3084, buf_align: 1
warning: alloc - success - len: 1542, ptr_align: 0
warning: shrink - success - 1542 to 1542, buf_align: 0
warning(RegistryUtf8.getString): value_utf8 = C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.35.32215\include\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.35.32215\include\cvt\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.35.32215\include\msclr\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.35.32215\include\sys\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.35.32215\crt\src\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.35.32215\crt\src\x64\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.35.32215\crt\src\arm\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.35.32215\crt\src\concrt\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.35.32215\crt\src\i386\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.35.32215\crt\src\linkopts\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.35.32215\crt\src\stl\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.35.32215\crt\src\vccorlib\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.35.32215\crt\src\vcruntime\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.35.32215\atlmfc\src\mfc\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.35.32215\atlmfc\src\atl\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.35.32215\atlmfc\include\
warning: free - len: 3084
warning(MsvcLibDir.findViaRegistry.path_msvc_lib_dir_registry): source_directories_value.len = 1542
warning(MsvcLibDir.findViaRegistry): source_directories = C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.35.32215\include\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.35.32215\include\cvt\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.35.32215\include\msclr\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.35.32215\include\sys\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.35.32215\crt\src\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.35.32215\crt\src\x64\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.35.32215\crt\src\arm\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.35.32215\crt\src\concrt\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.35.32215\crt\src\i386\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.35.32215\crt\src\linkopts\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.35.32215\crt\src\stl\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.35.32215\crt\src\vccorlib\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.35.32215\crt\src\vcruntime\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.35.32215\atlmfc\src\mfc\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.35.32215\atlmfc\src\atl\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.35.32215\atlmfc\include\
warning(MsvcLibDir.findViaRegistry): value of SourceDirectories in VisualStudio registry, separated:
warning(MsvcLibDir.findViaRegistry): 0: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.35.32215\include\
warning(MsvcLibDir.findViaRegistry): 1: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.35.32215\include\cvt\
warning(MsvcLibDir.findViaRegistry): 2: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.35.32215\include\msclr\
warning(MsvcLibDir.findViaRegistry): 3: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.35.32215\include\sys\
warning(MsvcLibDir.findViaRegistry): 4: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.35.32215\crt\src\
warning(MsvcLibDir.findViaRegistry): 5: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.35.32215\crt\src\x64\
warning(MsvcLibDir.findViaRegistry): 6: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.35.32215\crt\src\arm\
warning(MsvcLibDir.findViaRegistry): 7: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.35.32215\crt\src\concrt\
warning(MsvcLibDir.findViaRegistry): 8: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.35.32215\crt\src\i386\
warning(MsvcLibDir.findViaRegistry): 9: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.35.32215\crt\src\linkopts\
warning(MsvcLibDir.findViaRegistry): 10: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.35.32215\crt\src\stl\
warning(MsvcLibDir.findViaRegistry): 11: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.35.32215\crt\src\vccorlib\
warning(MsvcLibDir.findViaRegistry): 12: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.35.32215\crt\src\vcruntime\
warning(MsvcLibDir.findViaRegistry): 13: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.35.32215\atlmfc\src\mfc\
warning(MsvcLibDir.findViaRegistry): 14: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.35.32215\atlmfc\src\atl\
warning(MsvcLibDir.findViaRegistry): 15: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.35.32215\atlmfc\include\
warning: alloc - success - len: 90, ptr_align: 0
warning(MsvcLibDir.findViaRegistry): msvc_include_dir_maybe_with_trailing_slash = C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.35.32215\include\
warning: shrink - success - 90 to 89, buf_align: 0
warning(MsvcLibDir.findViaRegistry): msvc_dir_with_arch = C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.35.32215\Lib\x64
warning: free - len: 1542
warning: free - len: 52
warning: free - len: 88
warning: free - len: 55
warning(MsvcLibDir.find): full_path = C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.35.32215\Lib\x64
warning(ZigWindowsSDK.find): msvc_lib_dir = C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.35.32215\Lib\x64
warning: free - len: 38
warning: free - len: 12
warning: free - len: 89
# The directory that contains `stdlib.h`.
# On POSIX-like systems, include directories be found with: `cc -E -Wp,-v -xc /dev/null`
include_dir=C:\Program Files (x86)\Windows Kits\10\Include\10.0.20348.0\ucrt

# The system-specific include directory. May be the same as `include_dir`.
# On Windows it's the directory that includes `vcruntime.h`.
# On POSIX it's the directory that includes `sys/errno.h`.
sys_include_dir=C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.35.32215\include

# The directory that contains `crt1.o` or `crt2.o`.
# On POSIX, can be found with `cc -print-file-name=crt1.o`.
# Not needed when targeting MacOS.
crt_dir=C:\Program Files (x86)\Windows Kits\10\Lib\10.0.20348.0\ucrt\x64

# The directory that contains `vcruntime.lib`.
# Only needed when targeting MSVC on Windows.
msvc_lib_dir=C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.35.32215\Lib\x64

# The directory that contains `kernel32.lib`.
# Only needed when targeting MSVC on Windows.
kernel32_lib_dir=C:\Program Files (x86)\Windows Kits\10\Lib\10.0.20348.0\um\x64

# The directory that contains `crtbeginS.o` and `crtendS.o`
# Only needed when targeting Haiku.
gcc_dir=

BratishkaErik avatar May 11 '23 10:05 BratishkaErik

I'm not sure this privateregistry.bin approach will work for everyone, unfortunately. I don't appear to have a privateregistry.bin file in my %APPDATA%\Microsoft\VisualStudio\17.0_80a758ca folder (Windows 10, Visual Studio 2022 Community).

Might have to get the COM IEnumSetupInstances way working again from Zig.

squeek502 avatar May 11 '23 23:05 squeek502

%APPDATA%\Microsoft\VisualStudio\17.0_80a758ca folder (Windows 10, Visual Studio 2022 Community).

could you try:

%APPDATA%\Local\Microsoft\VisualStudio\17.0_80a758ca

?

BratishkaErik avatar May 12 '23 02:05 BratishkaErik

anyway, according to documentation privateregistry.bin should be there https://www.visualstudioextensibility.com/2017/07/15/about-the-new-privateregistry-bin-file-of-visual-studio-2017/

BratishkaErik avatar May 12 '23 02:05 BratishkaErik

Ah, you're right, %LOCALAPPDATA%\Microsoft\VisualStudio\17.0_80a758ca\privateregistry.bin exists for me.

squeek502 avatar May 12 '23 02:05 squeek502

Looks good on Windows 7 with Visual Studio 2017 installed. Couldn't get Zig proper to run (RtlWaitOnAddress not found) so I extracted just the zig libc command code and built that instead with:

zig\src> zig build-exe libc_only.zig -target x86_64-windows-msvc -fsingle-threaded
// src/libc_only.zig
const std = @import("std");
const LibCInstallation = @import("libc_installation.zig").LibCInstallation;

pub fn main() !void {
    var gpa = std.heap.GeneralPurposeAllocator(.{}){};
    const allocator = gpa.allocator();
    defer std.debug.assert(gpa.deinit() == .ok);

    var libc = LibCInstallation.findNative(.{
        .allocator = allocator,
        .verbose = true,
    }) catch |err| {
        std.log.err("unable to detect native libc: {s}", .{@errorName(err)});
        std.process.exit(1);
    };
    defer libc.deinit(allocator);

    var bw = std.io.bufferedWriter(std.io.getStdOut().writer());
    try libc.render(bw.writer());
    try bw.flush();
}

(also had to patch libc_installation.zig to remove build_options usage)

and was able to run it on Windows 7. Here was the result:

# The directory that contains `stdlib.h`.
# On POSIX-like systems, include directories be found with: `cc -E -Wp,-v -xc /dev/null`
include_dir=C:\Program Files (x86)\Windows Kits\10\Include\10.0.17134.0\ucrt

# The system-specific include directory. May be the same as `include_dir`.
# On Windows it's the directory that includes `vcruntime.h`.
# On POSIX it's the directory that includes `sys/errno.h`.
sys_include_dir=C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.15.26726\include

# The directory that contains `crt1.o` or `crt2.o`.
# On POSIX, can be found with `cc -print-file-name=crt1.o`.
# Not needed when targeting MacOS.
crt_dir=C:\Program Files (x86)\Windows Kits\10\Lib\10.0.17134.0\ucrt\x64

# The directory that contains `vcruntime.lib`.
# Only needed when targeting MSVC on Windows.
msvc_lib_dir=C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.15.26726\Lib\x64

# The directory that contains `kernel32.lib`.
# Only needed when targeting MSVC on Windows.
kernel32_lib_dir=C:\Program Files (x86)\Windows Kits\10\Lib\10.0.17134.0\um\x64

# The directory that contains `crtbeginS.o` and `crtendS.o`
# Only needed when targeting Haiku.
gcc_dir=
The full temp_log output
warning(RegistryUtf8.getString): subkey =
warning(RegistryUtf8.getString): value_name = InstallationFolder
warning(RegistryUtf16Le.getString): value_utf16le_buf_size from first call = 82
warning: alloc - success - len: 82, ptr_align: 1
warning(RegistryUtf16Le.getString): value_utf16le_buf_size from second call = 80
warning(RegistryUtf16Le.getString): value_utf16le.len = 39 (without terminating character), so value_utf16le_buf actual size = 78 (without terminating character
)
warning: shrink - success - 82 to 78, buf_align: 1
warning: alloc - success - len: 39, ptr_align: 0
warning: shrink - success - 39 to 39, buf_align: 0
warning(RegistryUtf8.getString): value_utf8 = C:\Program Files (x86)\Windows Kits\10\
warning: free - len: 78
warning(Windows10Sdk.find.path10): path_maybe_with_trailing_slash = C:\Program Files (x86)\Windows Kits\10\
warning: shrink - success - 39 to 38, buf_align: 0
warning(Windows10Sdk.find.path10): path_without_trailing_slash = C:\Program Files (x86)\Windows Kits\10
warning(Windows10Sdk.find): path = C:\Program Files (x86)\Windows Kits\10
warning(RegistryUtf8.getString): subkey =
warning(RegistryUtf8.getString): value_name = ProductVersion
warning(RegistryUtf16Le.getString): value_utf16le_buf_size from first call = 24
warning: alloc - success - len: 24, ptr_align: 1
warning(RegistryUtf16Le.getString): value_utf16le_buf_size from second call = 22
warning(RegistryUtf16Le.getString): value_utf16le.len = 10 (without terminating character), so value_utf16le_buf actual size = 20 (without terminating character
)
warning: shrink - success - 24 to 20, buf_align: 1
warning: alloc - success - len: 10, ptr_align: 0
warning: shrink - success - 10 to 10, buf_align: 0
warning(RegistryUtf8.getString): value_utf8 = 10.0.17134
warning: free - len: 20
warning(Windows10Sdk.find.version10): version_without_0 = 10.0.17134
warning: expand - failure - 10 to 23, buf_align: 0
warning: alloc - success - len: 23, ptr_align: 0
warning: free - len: 10
warning: shrink - success - 23 to 12, buf_align: 0
warning(Windows10Sdk.find.version10): version_with_0 = 10.0.17134.0
warning(Windows10Sdk.find): version = 10.0.17134.0
warning(ZigWindowsSDK.find): windows10sdk is null = false
warning(ZigWindowsSDK.find): windows10sdk.path = C:\Program Files (x86)\Windows Kits\10, windows10sdk.version = 10.0.17134.0
warning(RegistryUtf8.getString): subkey =
warning(RegistryUtf8.getString): value_name = KitsRoot81
warning(RegistryUtf16Le.getString): value_utf16le_buf_size from first call = 84
warning: alloc - success - len: 84, ptr_align: 1
warning(RegistryUtf16Le.getString): value_utf16le_buf_size from second call = 82
warning(RegistryUtf16Le.getString): value_utf16le.len = 40 (without terminating character), so value_utf16le_buf actual size = 80 (without terminating character
)
warning: shrink - success - 84 to 80, buf_align: 1
warning: alloc - success - len: 40, ptr_align: 0
warning: shrink - success - 40 to 40, buf_align: 0
warning(RegistryUtf8.getString): value_utf8 = C:\Program Files (x86)\Windows Kits\8.1\
warning: free - len: 80
warning(Windows81Sdk.find.path81): path_maybe_with_trailing_slash = C:\Program Files (x86)\Windows Kits\8.1\
warning: shrink - success - 40 to 39, buf_align: 0
warning(Windows81Sdk.find.path81): path_without_trailing_slash = C:\Program Files (x86)\Windows Kits\8.1
warning(Windows81Sdk.find): path = C:\Program Files (x86)\Windows Kits\8.1
warning: alloc - success - len: 3, ptr_align: 0
warning(Windows81Sdk.find): version = 0.0
warning: alloc - success - len: 27, ptr_align: 0
warning: shrink - success - 27 to 27, buf_align: 0
warning: alloc - success - len: 51, ptr_align: 0
warning: free - len: 27
warning(MsvcLibDir.findViaRegistry): visualstudio_folder_path = C:\Users\Ryan\AppData\Local\Microsoft\VisualStudio\
warning(MsvcLibDir.findViaRegistry.iterate_folder): subfolder_name = 14.0
warning(MsvcLibDir.findViaRegistry.iterate_folder): subfolder_name_checking (before replacing _ with .) = 14.0
warning(MsvcLibDir.findViaRegistry.iterate_folder): subfolder_name_checking (after  replacing _ with .) = 14.0
warning(MsvcLibDir.findViaRegistry.iterate_folder): subfolder_name = 15.0
warning(MsvcLibDir.findViaRegistry.iterate_folder): subfolder_name_checking (before replacing _ with .) = 15.0
warning(MsvcLibDir.findViaRegistry.iterate_folder): subfolder_name_checking (after  replacing _ with .) = 15.0
warning(MsvcLibDir.findViaRegistry.iterate_folder): subfolder_name = 15.0_6b9e52af
warning(MsvcLibDir.findViaRegistry.iterate_folder): subfolder_name_checking (before replacing _ with .) = 15.0_6b9e52af
warning(MsvcLibDir.findViaRegistry.iterate_folder): subfolder_name_checking (after  replacing _ with .) = 15.0.6b9e52af
warning(MsvcLibDir.findViaRegistry.iterate_folder): subfolder_name_normalized = 15.0.0+build.6b9e52af
warning(MsvcLibDir.findViaRegistry.iterate_folder): subfolder_name_normalized as SemVer = 15.0.0+build.6b9e52af
warning(MsvcLibDir.findViaRegistry.iterate_folder): subfolder_name = Packages
warning(MsvcLibDir.findViaRegistry.iterate_folder): subfolder_name_checking (before replacing _ with .) = Packages
warning(MsvcLibDir.findViaRegistry.iterate_folder): subfolder_name_checking (after  replacing _ with .) = Packages
warning(MsvcLibDir.findViaRegistry.iterate_folder): subfolder_name = SettingsLogs
warning(MsvcLibDir.findViaRegistry.iterate_folder): subfolder_name_checking (before replacing _ with .) = SettingsLogs
warning(MsvcLibDir.findViaRegistry.iterate_folder): subfolder_name_checking (after  replacing _ with .) = SettingsLogs
warning(MsvcLibDir.findViaRegistry.iterate_folder): subfolder_name = vshub
warning(MsvcLibDir.findViaRegistry.iterate_folder): subfolder_name_checking (before replacing _ with .) = vshub
warning(MsvcLibDir.findViaRegistry.iterate_folder): subfolder_name_checking (after  replacing _ with .) = vshub
warning(MsvcLibDir.findViaRegistry.vs_version): vs_version = 15.0_6b9e52af
warning(MsvcLibDir.findViaRegistry): vs_version = 15.0_6b9e52af
warning: alloc - success - len: 84, ptr_align: 0
warning(MsvcLibDir.findViaRegistry): privateregistry_absolute_path = C:\Users\Ryan\AppData\Local\Microsoft\VisualStudio\15.0_6b9e52af\privateregistry.bin
warning(RegistryUtf16Le.loadFromPath): return_code = SUCCESS
warning(MsvcLibDir.findViaRegistry): loadFromPath successfully!
warning: alloc - success - len: 52, ptr_align: 0
warning(MsvcLibDir.findViaRegistry): config_subkey = Software\Microsoft\VisualStudio\15.0_6b9e52af_Config
warning(RegistryUtf8.getString): subkey = Software\Microsoft\VisualStudio\15.0_6b9e52af_Config
warning(RegistryUtf8.getString): value_name = Source Directories
warning(RegistryUtf16Le.getString): value_utf16le_buf_size from first call = 3482
warning: alloc - success - len: 3482, ptr_align: 1
warning(RegistryUtf16Le.getString): value_utf16le_buf_size from second call = 3480
warning(RegistryUtf16Le.getString): value_utf16le.len = 1739 (without terminating character), so value_utf16le_buf actual size = 3478 (without terminating chara
cter)
warning: shrink - success - 3482 to 3478, buf_align: 1
warning: alloc - success - len: 1739, ptr_align: 0
warning: shrink - success - 1739 to 1739, buf_align: 0
warning(RegistryUtf8.getString): value_utf8 = C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.15.26726\include\;C:\Program Files
(x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.15.26726\include\cvt\;C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\
14.15.26726\include\msclr\;C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.15.26726\include\sys\;C:\Program Files (x86)\Microsoft
 Visual Studio\2017\Community\VC\Tools\MSVC\14.15.26726\include\thr\;C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.15.26726\crt
\src\;C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.15.26726\crt\src\x64\;C:\Program Files (x86)\Microsoft Visual Studio\2017\C
ommunity\VC\Tools\MSVC\14.15.26726\crt\src\arm\;C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.15.26726\crt\src\concrt\;C:\Progr
am Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.15.26726\crt\src\i386\;C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\T
ools\MSVC\14.15.26726\crt\src\linkopts\;C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.15.26726\crt\src\stl\;C:\Program Files (x
86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.15.26726\crt\src\vccorlib\;C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MS
VC\14.15.26726\crt\src\vcruntime\;C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.15.26726\atlmfc\src\mfc\;C:\Program Files (x86)
\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.15.26726\atlmfc\src\atl\;C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14
.15.26726\atlmfc\include\
warning: free - len: 3478
warning(MsvcLibDir.findViaRegistry.path_msvc_lib_dir_registry): source_directories_value.len = 1739
warning(MsvcLibDir.findViaRegistry): source_directories = C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.15.26726\include\;C:\Pr
ogram Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.15.26726\include\cvt\;C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC
\Tools\MSVC\14.15.26726\include\msclr\;C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.15.26726\include\sys\;C:\Program Files (x8
6)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.15.26726\include\thr\;C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.
15.26726\crt\src\;C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.15.26726\crt\src\x64\;C:\Program Files (x86)\Microsoft Visual S
tudio\2017\Community\VC\Tools\MSVC\14.15.26726\crt\src\arm\;C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.15.26726\crt\src\conc
rt\;C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.15.26726\crt\src\i386\;C:\Program Files (x86)\Microsoft Visual Studio\2017\Co
mmunity\VC\Tools\MSVC\14.15.26726\crt\src\linkopts\;C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.15.26726\crt\src\stl\;C:\Prog
ram Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.15.26726\crt\src\vccorlib\;C:\Program Files (x86)\Microsoft Visual Studio\2017\Community
\VC\Tools\MSVC\14.15.26726\crt\src\vcruntime\;C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.15.26726\atlmfc\src\mfc\;C:\Program
 Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.15.26726\atlmfc\src\atl\;C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\T
ools\MSVC\14.15.26726\atlmfc\include\
warning(MsvcLibDir.findViaRegistry): value of SourceDirectories in VisualStudio registry, separated:
warning(MsvcLibDir.findViaRegistry): 0: C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.15.26726\include\
warning(MsvcLibDir.findViaRegistry): 1: C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.15.26726\include\cvt\
warning(MsvcLibDir.findViaRegistry): 2: C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.15.26726\include\msclr\
warning(MsvcLibDir.findViaRegistry): 3: C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.15.26726\include\sys\
warning(MsvcLibDir.findViaRegistry): 4: C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.15.26726\include\thr\
warning(MsvcLibDir.findViaRegistry): 5: C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.15.26726\crt\src\
warning(MsvcLibDir.findViaRegistry): 6: C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.15.26726\crt\src\x64\
warning(MsvcLibDir.findViaRegistry): 7: C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.15.26726\crt\src\arm\
warning(MsvcLibDir.findViaRegistry): 8: C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.15.26726\crt\src\concrt\
warning(MsvcLibDir.findViaRegistry): 9: C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.15.26726\crt\src\i386\
warning(MsvcLibDir.findViaRegistry): 10: C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.15.26726\crt\src\linkopts\
warning(MsvcLibDir.findViaRegistry): 11: C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.15.26726\crt\src\stl\
warning(MsvcLibDir.findViaRegistry): 12: C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.15.26726\crt\src\vccorlib\
warning(MsvcLibDir.findViaRegistry): 13: C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.15.26726\crt\src\vcruntime\
warning(MsvcLibDir.findViaRegistry): 14: C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.15.26726\atlmfc\src\mfc\
warning(MsvcLibDir.findViaRegistry): 15: C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.15.26726\atlmfc\src\atl\
warning(MsvcLibDir.findViaRegistry): 16: C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.15.26726\atlmfc\include\
warning: alloc - success - len: 96, ptr_align: 0
warning(MsvcLibDir.findViaRegistry): msvc_include_dir_maybe_with_trailing_slash = C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14
.15.26726\include\
warning: shrink - success - 96 to 95, buf_align: 0
warning(MsvcLibDir.findViaRegistry): msvc_dir_with_arch = C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.15.26726\Lib\x64
warning: free - len: 1739
warning: free - len: 52
warning: free - len: 84
warning: free - len: 51
warning(MsvcLibDir.find): full_path = C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.15.26726\Lib\x64
warning: free - len: 38
warning: free - len: 12
warning: free - len: 39
warning: free - len: 3
warning: free - len: 95

I also had an old Zig build (0.9.0-dev.1146+4afe4bdfe to be exact) that I could run zig libc with to compare. The only difference was that it had a trailing slash on the msvc_lib_dir.

Here's the libc_only.exe I used if anyone else wants to test it with their setup:

zig-windows-sdk-libc_only.zip

squeek502 avatar May 22 '23 01:05 squeek502

Could you please share the listing of directories under C:\Program Files (x86)\Windows Kits\8.1? Looks like version detection is broken here

BratishkaErik avatar May 22 '23 06:05 BratishkaErik

If I understand correctly, here's the relevant portion:

C:\PROGRAM FILES (X86)\WINDOWS KITS\8.1
├───Lib
│   └───winv6.3
│       └───um
│           ├───arm
│           ├───x64
│           └───x86

Let me know if you need the full tree dump.

EDIT: Also, in the registry

HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Microsoft SDKs\Windows\v8.1\ProductVersion

is set to 6.3..9600

EDIT#2: Looks like SemanticVersion requires patch, so 6.3 is failing to parse: https://github.com/ziglang/zig/blob/9d4d96ca9b186af2705f88c17b2704096c08e829/lib/std/SemanticVersion.zig#L91-L93

squeek502 avatar May 22 '23 07:05 squeek502

Latest version seems to have regressed detection on my Windows 7 install. Here are the latest results for my Windows 10 and Windows 7 installs:

Windows 10
warning(RegistryUtf8.getString): subkey = 
warning(RegistryUtf8.getString): value_name = InstallationFolder
warning(RegistryUtf16Le.getString): value_utf16le_buf_size from first call = 82
warning: alloc - success - len: 82, ptr_align: 1
warning(RegistryUtf16Le.getString): value_utf16le_buf_size from second call = 80
warning(RegistryUtf16Le.getString): value_utf16le.len = 39 (without terminating character), so value_utf16le_buf actual size = 78 (without terminating character)
warning: shrink - success - 82 to 78, buf_align: 1
warning: alloc - success - len: 39, ptr_align: 0
warning: shrink - success - 39 to 39, buf_align: 0
warning(RegistryUtf8.getString): value_utf8 = C:\Program Files (x86)\Windows Kits\10\
warning: free - len: 78
warning(Windows10Sdk.find.path10): path_maybe_with_trailing_slash = C:\Program Files (x86)\Windows Kits\10\
warning: shrink - success - 39 to 38, buf_align: 0
warning(Windows10Sdk.find.path10): path_without_trailing_slash = C:\Program Files (x86)\Windows Kits\10
warning(Windows10Sdk.find): path = C:\Program Files (x86)\Windows Kits\10
warning(RegistryUtf8.getString): subkey = 
warning(RegistryUtf8.getString): value_name = ProductVersion
warning(RegistryUtf16Le.getString): value_utf16le_buf_size from first call = 24
warning: alloc - success - len: 24, ptr_align: 1
warning(RegistryUtf16Le.getString): value_utf16le_buf_size from second call = 22
warning(RegistryUtf16Le.getString): value_utf16le.len = 10 (without terminating character), so value_utf16le_buf actual size = 20 (without terminating character)
warning: shrink - success - 24 to 20, buf_align: 1
warning: alloc - success - len: 10, ptr_align: 0
warning: shrink - success - 10 to 10, buf_align: 0
warning(RegistryUtf8.getString): value_utf8 = 10.0.22621
warning: free - len: 20
warning(Windows10Sdk.find.version10): version_without_0 = 10.0.22621
warning: expand - failure - 10 to 23, buf_align: 0
warning: alloc - success - len: 23, ptr_align: 0
warning: free - len: 10
warning: shrink - success - 23 to 12, buf_align: 0
warning(Windows10Sdk.find.version10): version_with_0 = 10.0.22621.0
warning(Windows10Sdk.find): version = 10.0.22621.0
warning(ZigWindowsSDK.find): windows10sdk is null = false
warning(ZigWindowsSDK.find): windows10sdk.path = C:\Program Files (x86)\Windows Kits\10, windows10sdk.version = 10.0.22621.0
warning(RegistryUtf8.getString): subkey = 
warning(RegistryUtf8.getString): value_name = KitsRoot81
warning(RegistryUtf16Le.getString): value_utf16le_buf_size from first call = 0
warning(ZigWindowsSDK.find): windows81sdk is null = true
warning: alloc - success - len: 27, ptr_align: 0
warning: shrink - success - 27 to 27, buf_align: 0
warning: alloc - success - len: 51, ptr_align: 0
warning: free - len: 27
warning(MsvcLibDir.findViaRegistry): visualstudio_folder_path = C:\Users\Ryan\AppData\Local\Microsoft\VisualStudio\
warning(MsvcLibDir.findViaRegistry.vs_version.iterate_folder): subfolder_name = 17.0_80a758ca
warning(MsvcLibDir.findViaRegistry.vs_version.iterate_folder): subfolder_name (before replacing _ with .) = 17.0_80a758ca
warning(MsvcLibDir.findViaRegistry.vs_version.iterate_folder): subfolder_name (after  replacing _ with .) = 17.0.80a758ca
warning(MsvcLibDir.findViaRegistry.vs_version.iterate_folder): subfolder_name_normalized = 17.0.0+build.80a758ca
warning(MsvcLibDir.findViaRegistry.vs_version.iterate_folder): subfolder_name_normalized as SemVer = 17.0.0+build.80a758ca
warning(MsvcLibDir.findViaRegistry.vs_version.iterate_folder): previous_subfolder_name_normalized = 0.0.0+build.0
warning(MsvcLibDir.findViaRegistry.vs_version.iterate_folder): previous_subfolder_name_normalized as SemVer = 0.0.0+build.0
warning(MsvcLibDir.findViaRegistry.vs_version.iterate_folder): subfolder_name = BackupFiles
warning(MsvcLibDir.findViaRegistry.vs_version.iterate_folder): subfolder_name_normalized = BackupFiles.0.0
warning(MsvcLibDir.findViaRegistry.vs_version.iterate_folder): subfolder_name_normalized as SemVer = error.InvalidVersion
warning(MsvcLibDir.findViaRegistry.vs_version.iterate_folder): subfolder_name = CacheService
warning(MsvcLibDir.findViaRegistry.vs_version.iterate_folder): subfolder_name_normalized = CacheService.0.0
warning(MsvcLibDir.findViaRegistry.vs_version.iterate_folder): subfolder_name_normalized as SemVer = error.InvalidVersion
warning(MsvcLibDir.findViaRegistry.vs_version.iterate_folder): subfolder_name = Packages
warning(MsvcLibDir.findViaRegistry.vs_version.iterate_folder): subfolder_name_normalized = Packages.0.0
warning(MsvcLibDir.findViaRegistry.vs_version.iterate_folder): subfolder_name_normalized as SemVer = error.InvalidVersion
warning(MsvcLibDir.findViaRegistry.vs_version.iterate_folder): subfolder_name = RemoteSettings
warning(MsvcLibDir.findViaRegistry.vs_version.iterate_folder): subfolder_name_normalized = RemoteSettings.0.0
warning(MsvcLibDir.findViaRegistry.vs_version.iterate_folder): subfolder_name_normalized as SemVer = error.InvalidVersion
warning(MsvcLibDir.findViaRegistry.vs_version.iterate_folder): subfolder_name = Roslyn
warning(MsvcLibDir.findViaRegistry.vs_version.iterate_folder): subfolder_name_normalized = Roslyn.0.0
warning(MsvcLibDir.findViaRegistry.vs_version.iterate_folder): subfolder_name_normalized as SemVer = error.InvalidVersion
warning(MsvcLibDir.findViaRegistry.vs_version.iterate_folder): subfolder_name = SettingsLogs
warning(MsvcLibDir.findViaRegistry.vs_version.iterate_folder): subfolder_name_normalized = SettingsLogs.0.0
warning(MsvcLibDir.findViaRegistry.vs_version.iterate_folder): subfolder_name_normalized as SemVer = error.InvalidVersion
warning(MsvcLibDir.findViaRegistry.vs_version.iterate_folder): subfolder_name = vshub
warning(MsvcLibDir.findViaRegistry.vs_version.iterate_folder): subfolder_name_normalized = vshub.0.0
warning(MsvcLibDir.findViaRegistry.vs_version.iterate_folder): subfolder_name_normalized as SemVer = error.InvalidVersion
warning(MsvcLibDir.findViaRegistry.vs_version.iterate_folder): subfolder_name = WebView2Cache
warning(MsvcLibDir.findViaRegistry.vs_version.iterate_folder): subfolder_name_normalized = WebView2Cache.0.0
warning(MsvcLibDir.findViaRegistry.vs_version.iterate_folder): subfolder_name_normalized as SemVer = error.InvalidVersion
warning(MsvcLibDir.findViaRegistry.vs_version): version = 17.0_80a758ca
warning(MsvcLibDir.findViaRegistry): vs_version = 17.0_80a758ca
warning: alloc - success - len: 84, ptr_align: 0
warning(MsvcLibDir.findViaRegistry): privateregistry_absolute_path = C:\Users\Ryan\AppData\Local\Microsoft\VisualStudio\17.0_80a758ca\privateregistry.bin
warning(RegistryUtf16Le.loadFromPath): return_code = SUCCESS
warning(MsvcLibDir.findViaRegistry): loadFromPath successfully!
warning: alloc - success - len: 52, ptr_align: 0
warning(MsvcLibDir.findViaRegistry): config_subkey = Software\Microsoft\VisualStudio\17.0_80a758ca_Config
warning(RegistryUtf8.getString): subkey = Software\Microsoft\VisualStudio\17.0_80a758ca_Config
warning(RegistryUtf8.getString): value_name = Source Directories
warning(RegistryUtf16Le.getString): value_utf16le_buf_size from first call = 3088
warning: alloc - success - len: 3088, ptr_align: 1
warning(RegistryUtf16Le.getString): value_utf16le_buf_size from second call = 3086
warning(RegistryUtf16Le.getString): value_utf16le.len = 1542 (without terminating character), so value_utf16le_buf actual size = 3084 (without terminating character)
warning: shrink - success - 3088 to 3084, buf_align: 1
warning: alloc - success - len: 1542, ptr_align: 0
warning: shrink - success - 1542 to 1542, buf_align: 0
warning(RegistryUtf8.getString): value_utf8 = C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\include\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\include\cvt\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\include\msclr\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\include\sys\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\crt\src\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\crt\src\x64\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\crt\src\arm\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\crt\src\concrt\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\crt\src\i386\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\crt\src\linkopts\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\crt\src\stl\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\crt\src\vccorlib\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\crt\src\vcruntime\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\src\mfc\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\src\atl\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\
warning: free - len: 3084
warning(MsvcLibDir.findViaRegistry.path_msvc_lib_dir_registry): source_directories_value.len = 1542
warning(MsvcLibDir.findViaRegistry): source_directories = C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\include\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\include\cvt\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\include\msclr\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\include\sys\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\crt\src\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\crt\src\x64\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\crt\src\arm\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\crt\src\concrt\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\crt\src\i386\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\crt\src\linkopts\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\crt\src\stl\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\crt\src\vccorlib\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\crt\src\vcruntime\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\src\mfc\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\src\atl\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\
warning(MsvcLibDir.findViaRegistry): value of SourceDirectories in VisualStudio registry, separated: 
warning(MsvcLibDir.findViaRegistry): 0: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\include\
warning(MsvcLibDir.findViaRegistry): 1: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\include\cvt\
warning(MsvcLibDir.findViaRegistry): 2: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\include\msclr\
warning(MsvcLibDir.findViaRegistry): 3: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\include\sys\
warning(MsvcLibDir.findViaRegistry): 4: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\crt\src\
warning(MsvcLibDir.findViaRegistry): 5: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\crt\src\x64\
warning(MsvcLibDir.findViaRegistry): 6: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\crt\src\arm\
warning(MsvcLibDir.findViaRegistry): 7: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\crt\src\concrt\
warning(MsvcLibDir.findViaRegistry): 8: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\crt\src\i386\
warning(MsvcLibDir.findViaRegistry): 9: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\crt\src\linkopts\
warning(MsvcLibDir.findViaRegistry): 10: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\crt\src\stl\
warning(MsvcLibDir.findViaRegistry): 11: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\crt\src\vccorlib\
warning(MsvcLibDir.findViaRegistry): 12: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\crt\src\vcruntime\
warning(MsvcLibDir.findViaRegistry): 13: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\src\mfc\
warning(MsvcLibDir.findViaRegistry): 14: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\src\atl\
warning(MsvcLibDir.findViaRegistry): 15: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\
warning: alloc - success - len: 90, ptr_align: 0
warning(MsvcLibDir.findViaRegistry): msvc_include_dir_maybe_with_trailing_slash = C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\include\
warning: shrink - success - 90 to 89, buf_align: 0
warning(MsvcLibDir.findViaRegistry): msvc_dir_with_arch = C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\Lib\x64
warning: free - len: 1542
warning: free - len: 52
warning: free - len: 84
warning: free - len: 51
warning(MsvcLibDir.find): full_path = C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\Lib\x64
warning(ZigWindowsSDK.find): msvc_lib_dir = C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\Lib\x64
warning: free - len: 38
warning: free - len: 12
warning: free - len: 89
# The directory that contains `stdlib.h`.
# On POSIX-like systems, include directories be found with: `cc -E -Wp,-v -xc /dev/null`
include_dir=C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt

# The system-specific include directory. May be the same as `include_dir`.
# On Windows it's the directory that includes `vcruntime.h`.
# On POSIX it's the directory that includes `sys/errno.h`.
sys_include_dir=C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\include

# The directory that contains `crt1.o` or `crt2.o`.
# On POSIX, can be found with `cc -print-file-name=crt1.o`.
# Not needed when targeting MacOS.
crt_dir=C:\Program Files (x86)\Windows Kits\10\Lib\10.0.22621.0\ucrt\x64

# The directory that contains `vcruntime.lib`.
# Only needed when targeting MSVC on Windows.
msvc_lib_dir=C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\Lib\x64

# The directory that contains `kernel32.lib`.
# Only needed when targeting MSVC on Windows.
kernel32_lib_dir=C:\Program Files (x86)\Windows Kits\10\Lib\10.0.22621.0\um\x64

# The directory that contains `crtbeginS.o` and `crtendS.o`
# Only needed when targeting Haiku.
gcc_dir=
Windows 7
warning(RegistryUtf8.getString): subkey = 
warning(RegistryUtf8.getString): value_name = InstallationFolder
warning(RegistryUtf16Le.getString): value_utf16le_buf_size from first call = 82
warning: alloc - success - len: 82, ptr_align: 1
warning(RegistryUtf16Le.getString): value_utf16le_buf_size from second call = 80
warning(RegistryUtf16Le.getString): value_utf16le.len = 39 (without terminating character), so value_utf16le_buf actual size = 78 (without terminating character)
warning: shrink - success - 82 to 78, buf_align: 1
warning: alloc - success - len: 39, ptr_align: 0
warning: shrink - success - 39 to 39, buf_align: 0
warning(RegistryUtf8.getString): value_utf8 = C:\Program Files (x86)\Windows Kits\10\
warning: free - len: 78
warning(Windows10Sdk.find.path10): path_maybe_with_trailing_slash = C:\Program Files (x86)\Windows Kits\10\
warning: shrink - success - 39 to 38, buf_align: 0
warning(Windows10Sdk.find.path10): path_without_trailing_slash = C:\Program Files (x86)\Windows Kits\10
warning(Windows10Sdk.find): path = C:\Program Files (x86)\Windows Kits\10
warning(RegistryUtf8.getString): subkey = 
warning(RegistryUtf8.getString): value_name = ProductVersion
warning(RegistryUtf16Le.getString): value_utf16le_buf_size from first call = 24
warning: alloc - success - len: 24, ptr_align: 1
warning(RegistryUtf16Le.getString): value_utf16le_buf_size from second call = 22
warning(RegistryUtf16Le.getString): value_utf16le.len = 10 (without terminating character), so value_utf16le_buf actual size = 20 (without terminating character)
warning: shrink - success - 24 to 20, buf_align: 1
warning: alloc - success - len: 10, ptr_align: 0
warning: shrink - success - 10 to 10, buf_align: 0
warning(RegistryUtf8.getString): value_utf8 = 10.0.17134
warning: free - len: 20
warning(Windows10Sdk.find.version10): version_without_0 = 10.0.17134
warning: expand - failure - 10 to 23, buf_align: 0
warning: alloc - success - len: 23, ptr_align: 0
warning: free - len: 10
warning: shrink - success - 23 to 12, buf_align: 0
warning(Windows10Sdk.find.version10): version_with_0 = 10.0.17134.0
warning(Windows10Sdk.find): version = 10.0.17134.0
warning(ZigWindowsSDK.find): windows10sdk is null = false
warning(ZigWindowsSDK.find): windows10sdk.path = C:\Program Files (x86)\Windows Kits\10, windows10sdk.version = 10.0.17134.0
warning(RegistryUtf8.getString): subkey = 
warning(RegistryUtf8.getString): value_name = KitsRoot81
warning(RegistryUtf16Le.getString): value_utf16le_buf_size from first call = 84
warning: alloc - success - len: 84, ptr_align: 1
warning(RegistryUtf16Le.getString): value_utf16le_buf_size from second call = 82
warning(RegistryUtf16Le.getString): value_utf16le.len = 40 (without terminating character), so value_utf16le_buf actual size = 80 (without terminating character)
warning: shrink - success - 84 to 80, buf_align: 1
warning: alloc - success - len: 40, ptr_align: 0
warning: shrink - success - 40 to 40, buf_align: 0
warning(RegistryUtf8.getString): value_utf8 = C:\Program Files (x86)\Windows Kits\8.1\
warning: free - len: 80
warning(Windows81Sdk.find.path81): path_maybe_with_trailing_slash = C:\Program Files (x86)\Windows Kits\8.1\
warning: shrink - success - 40 to 39, buf_align: 0
warning(Windows81Sdk.find.path81): path_without_trailing_slash = C:\Program Files (x86)\Windows Kits\8.1
warning(Windows81Sdk.find): path = C:\Program Files (x86)\Windows Kits\8.1
warning(Windows81Sdk.find.version81): sdk_lib_dir_path = C:\Program Files (x86)\Windows Kits\8.1\Lib\
warning(Windows81Sdk.find.version81.iterate_folder): subfolder_name (possibly with "winv" prefix) = winv6.3
warning(Windows81Sdk.find.version81.iterate_folder): subfolder_name = 6.3
warning(Windows81Sdk.find.version81.iterate_folder): subfolder_name_normalized = 6.3.0
warning(Windows81Sdk.find.version81.iterate_folder): subfolder_name_normalized as SemVer = 6.3.0
warning(Windows81Sdk.find.version81.iterate_folder): previous_subfolder_name_normalized = 0.0.0+build.0
warning(Windows81Sdk.find.version81.iterate_folder): previous_subfolder_name_normalized as SemVer = 0.0.0+build.0
warning(Windows81Sdk.find.version81): version = 6.3
warning: alloc - success - len: 3, ptr_align: 0
warning(Windows81Sdk.find): version = 6.3
warning(ZigWindowsSDK.find): windows81sdk is null = false
warning(ZigWindowsSDK.find): windows81sdk.path = C:\Program Files (x86)\Windows Kits\8.1, windows81sdk.version = 6.3
warning: alloc - success - len: 27, ptr_align: 0
warning: shrink - success - 27 to 27, buf_align: 0
warning: alloc - success - len: 51, ptr_align: 0
warning: free - len: 27
warning(MsvcLibDir.findViaRegistry): visualstudio_folder_path = C:\Users\Ryan\AppData\Local\Microsoft\VisualStudio\
warning(MsvcLibDir.findViaRegistry.vs_version.iterate_folder): subfolder_name = 14.0
warning(MsvcLibDir.findViaRegistry.vs_version.iterate_folder): subfolder_name_normalized = 14.0.0
warning(MsvcLibDir.findViaRegistry.vs_version.iterate_folder): subfolder_name_normalized as SemVer = 14.0.0
warning(MsvcLibDir.findViaRegistry.vs_version.iterate_folder): previous_subfolder_name_normalized = 0.0.0+build.0
warning(MsvcLibDir.findViaRegistry.vs_version.iterate_folder): previous_subfolder_name_normalized as SemVer = 0.0.0+build.0
warning(MsvcLibDir.findViaRegistry.vs_version.iterate_folder): subfolder_name = 15.0
warning(MsvcLibDir.findViaRegistry.vs_version.iterate_folder): subfolder_name_normalized = 15.0.0
warning(MsvcLibDir.findViaRegistry.vs_version.iterate_folder): subfolder_name_normalized as SemVer = 15.0.0
warning(MsvcLibDir.findViaRegistry.vs_version.iterate_folder): previous_subfolder_name_normalized = 14.0.0
warning(MsvcLibDir.findViaRegistry.vs_version.iterate_folder): previous_subfolder_name_normalized as SemVer = 14.0.0
warning(MsvcLibDir.findViaRegistry.vs_version.iterate_folder): subfolder_name = 15.0_6b9e52af
warning(MsvcLibDir.findViaRegistry.vs_version.iterate_folder): subfolder_name (before replacing _ with .) = 15.0_6b9e52af
warning(MsvcLibDir.findViaRegistry.vs_version.iterate_folder): subfolder_name (after  replacing _ with .) = 15.0.6b9e52af
warning(MsvcLibDir.findViaRegistry.vs_version.iterate_folder): subfolder_name_normalized = 15.0.0+build.6b9e52af
warning(MsvcLibDir.findViaRegistry.vs_version.iterate_folder): subfolder_name_normalized as SemVer = 15.0.0+build.6b9e52af
warning(MsvcLibDir.findViaRegistry.vs_version.iterate_folder): previous_subfolder_name_normalized = 15.0.0
warning(MsvcLibDir.findViaRegistry.vs_version.iterate_folder): previous_subfolder_name_normalized as SemVer = 15.0.0
warning(MsvcLibDir.findViaRegistry.vs_version.iterate_folder): subfolder_name = Packages
warning(MsvcLibDir.findViaRegistry.vs_version.iterate_folder): subfolder_name_normalized = Packages.0.0
warning(MsvcLibDir.findViaRegistry.vs_version.iterate_folder): subfolder_name_normalized as SemVer = error.InvalidVersion
warning(MsvcLibDir.findViaRegistry.vs_version.iterate_folder): subfolder_name = SettingsLogs
warning(MsvcLibDir.findViaRegistry.vs_version.iterate_folder): subfolder_name_normalized = SettingsLogs.0.0
warning(MsvcLibDir.findViaRegistry.vs_version.iterate_folder): subfolder_name_normalized as SemVer = error.InvalidVersion
warning(MsvcLibDir.findViaRegistry.vs_version.iterate_folder): subfolder_name = vshub
warning(MsvcLibDir.findViaRegistry.vs_version.iterate_folder): subfolder_name_normalized = vshub.0.0
warning(MsvcLibDir.findViaRegistry.vs_version.iterate_folder): subfolder_name_normalized as SemVer = error.InvalidVersion
warning(MsvcLibDir.findViaRegistry.vs_version): version = 15.0
warning(MsvcLibDir.findViaRegistry): vs_version = 15.0
warning: alloc - success - len: 75, ptr_align: 0
warning(MsvcLibDir.findViaRegistry): privateregistry_absolute_path = C:\Users\Ryan\AppData\Local\Microsoft\VisualStudio\15.0\privateregistry.bin
warning(RegistryUtf16Le.loadFromPath): return_code = SUCCESS
warning(MsvcLibDir.findViaRegistry): loadFromPath successfully!
warning: alloc - success - len: 43, ptr_align: 0
warning(MsvcLibDir.findViaRegistry): config_subkey = Software\Microsoft\VisualStudio\15.0_Config
warning(RegistryUtf8.getString): subkey = Software\Microsoft\VisualStudio\15.0_Config
warning(RegistryUtf8.getString): value_name = Source Directories
warning(RegistryUtf16Le.getString): value_utf16le_buf_size from first call = 0
warning: free - len: 43
warning: free - len: 75
warning: free - len: 51
warning: alloc - success - len: 3, ptr_align: 0
warning: shrink - success - 3 to 3, buf_align: 0
warning: alloc - success - len: 3, ptr_align: 0
warning: shrink - success - 3 to 3, buf_align: 0
warning: alloc - success - len: 288, ptr_align: 3
warning: alloc - success - len: 3, ptr_align: 0
warning: shrink - success - 3 to 3, buf_align: 0
warning: alloc - success - len: 19, ptr_align: 0
warning: shrink - success - 19 to 19, buf_align: 0
warning: alloc - success - len: 9, ptr_align: 0
warning: shrink - success - 9 to 9, buf_align: 0
warning: alloc - success - len: 8, ptr_align: 0
warning: shrink - success - 8 to 8, buf_align: 0
warning: alloc - success - len: 3, ptr_align: 0
warning: shrink - success - 3 to 3, buf_align: 0
warning: alloc - success - len: 7, ptr_align: 0
warning: shrink - success - 7 to 7, buf_align: 0
warning: alloc - success - len: 15, ptr_align: 0
warning: shrink - success - 15 to 15, buf_align: 0
warning: alloc - success - len: 14, ptr_align: 0
warning: shrink - success - 14 to 14, buf_align: 0
warning: alloc - success - len: 7, ptr_align: 0
warning: shrink - success - 7 to 7, buf_align: 0
warning: alloc - success - len: 29, ptr_align: 0
warning: shrink - success - 29 to 29, buf_align: 0
warning: alloc - success - len: 18, ptr_align: 0
warning: shrink - success - 18 to 18, buf_align: 0
warning: alloc - success - len: 29, ptr_align: 0
warning: shrink - success - 29 to 29, buf_align: 0
warning: alloc - success - len: 552, ptr_align: 3
warning: free - len: 288
warning: alloc - success - len: 23, ptr_align: 0
warning: shrink - success - 23 to 23, buf_align: 0
warning: alloc - success - len: 35, ptr_align: 0
warning: shrink - success - 35 to 35, buf_align: 0
warning: alloc - success - len: 18, ptr_align: 0
warning: shrink - success - 18 to 18, buf_align: 0
warning: alloc - success - len: 29, ptr_align: 0
warning: shrink - success - 29 to 29, buf_align: 0
warning: alloc - success - len: 12, ptr_align: 0
warning: shrink - success - 12 to 12, buf_align: 0
warning: alloc - success - len: 7, ptr_align: 0
warning: shrink - success - 7 to 7, buf_align: 0
warning: alloc - success - len: 7, ptr_align: 0
warning: shrink - success - 7 to 7, buf_align: 0
warning: alloc - success - len: 27, ptr_align: 0
warning: shrink - success - 27 to 27, buf_align: 0
warning: alloc - success - len: 16, ptr_align: 0
warning: shrink - success - 16 to 16, buf_align: 0
warning: alloc - success - len: 2, ptr_align: 0
warning: shrink - success - 2 to 2, buf_align: 0
warning: alloc - success - len: 7, ptr_align: 0
warning: shrink - success - 7 to 7, buf_align: 0
warning: alloc - success - len: 53, ptr_align: 0
warning: shrink - success - 53 to 53, buf_align: 0
warning: alloc - success - len: 1080, ptr_align: 3
warning: free - len: 552
warning: alloc - success - len: 6, ptr_align: 0
warning: shrink - success - 6 to 6, buf_align: 0
warning: alloc - success - len: 16, ptr_align: 0
warning: shrink - success - 16 to 16, buf_align: 0
warning: alloc - success - len: 6, ptr_align: 0
warning: shrink - success - 6 to 6, buf_align: 0
warning: alloc - success - len: 6, ptr_align: 0
warning: shrink - success - 6 to 6, buf_align: 0
warning: alloc - success - len: 20, ptr_align: 0
warning: shrink - success - 20 to 20, buf_align: 0
warning: alloc - success - len: 19, ptr_align: 0
warning: shrink - success - 19 to 19, buf_align: 0
warning: alloc - success - len: 12, ptr_align: 0
warning: shrink - success - 12 to 12, buf_align: 0
warning: alloc - success - len: 37, ptr_align: 0
warning: shrink - success - 37 to 37, buf_align: 0
warning: alloc - success - len: 8, ptr_align: 0
warning: shrink - success - 8 to 8, buf_align: 0
warning: alloc - success - len: 20, ptr_align: 0
warning: shrink - success - 20 to 20, buf_align: 0
warning: alloc - success - len: 9, ptr_align: 0
warning: shrink - success - 9 to 9, buf_align: 0
warning: alloc - success - len: 2, ptr_align: 0
warning: shrink - success - 2 to 2, buf_align: 0
warning: alloc - success - len: 8, ptr_align: 0
warning: shrink - success - 8 to 8, buf_align: 0
warning: alloc - success - len: 11, ptr_align: 0
warning: shrink - success - 11 to 11, buf_align: 0
warning: alloc - success - len: 9, ptr_align: 0
warning: shrink - success - 9 to 9, buf_align: 0
warning: alloc - success - len: 34, ptr_align: 0
warning: shrink - success - 34 to 34, buf_align: 0
warning: alloc - success - len: 8, ptr_align: 0
warning: shrink - success - 8 to 8, buf_align: 0
warning: alloc - success - len: 43, ptr_align: 0
warning: shrink - success - 43 to 43, buf_align: 0
warning: alloc - success - len: 12, ptr_align: 0
warning: shrink - success - 12 to 12, buf_align: 0
warning: alloc - success - len: 27, ptr_align: 0
warning: shrink - success - 27 to 27, buf_align: 0
warning: alloc - success - len: 11, ptr_align: 0
warning: shrink - success - 11 to 11, buf_align: 0
warning: alloc - success - len: 9, ptr_align: 0
warning: shrink - success - 9 to 9, buf_align: 0
warning: alloc - success - len: 13, ptr_align: 0
warning: shrink - success - 13 to 13, buf_align: 0
warning: alloc - success - len: 19, ptr_align: 0
warning: shrink - success - 19 to 19, buf_align: 0
warning: alloc - success - len: 20, ptr_align: 0
warning: shrink - success - 20 to 20, buf_align: 0
warning: alloc - success - len: 1, ptr_align: 0
warning: shrink - success - 1 to 1, buf_align: 0
warning: alloc - success - len: 2136, ptr_align: 3
warning: free - len: 1080
warning: alloc - success - len: 12, ptr_align: 0
warning: shrink - success - 12 to 12, buf_align: 0
warning: alloc - success - len: 32, ptr_align: 0
warning: shrink - success - 32 to 32, buf_align: 0
warning: alloc - success - len: 2, ptr_align: 0
warning: shrink - success - 2 to 2, buf_align: 0
warning: alloc - success - len: 10, ptr_align: 0
warning: shrink - success - 10 to 10, buf_align: 0
warning: alloc - success - len: 4, ptr_align: 0
warning: shrink - success - 4 to 4, buf_align: 0
warning: alloc - success - len: 1545, ptr_align: 0
warning: shrink - success - 1545 to 1545, buf_align: 0
warning: alloc - success - len: 7, ptr_align: 0
warning: shrink - success - 7 to 7, buf_align: 0
warning: alloc - success - len: 62, ptr_align: 0
warning: shrink - success - 62 to 62, buf_align: 0
warning: alloc - success - len: 25, ptr_align: 0
warning: shrink - success - 25 to 25, buf_align: 0
warning: alloc - success - len: 3, ptr_align: 0
warning: shrink - success - 3 to 3, buf_align: 0
warning: alloc - success - len: 22, ptr_align: 0
warning: shrink - success - 22 to 22, buf_align: 0
warning: alloc - success - len: 5, ptr_align: 0
warning: shrink - success - 5 to 5, buf_align: 0
warning: alloc - success - len: 20, ptr_align: 0
warning: shrink - success - 20 to 20, buf_align: 0
warning: alloc - success - len: 50, ptr_align: 0
warning: shrink - success - 50 to 50, buf_align: 0
warning: alloc - success - len: 15, ptr_align: 0
warning: shrink - success - 15 to 15, buf_align: 0
warning: alloc - success - len: 1, ptr_align: 0
warning: shrink - success - 1 to 1, buf_align: 0
warning: alloc - success - len: 18, ptr_align: 0
warning: shrink - success - 18 to 18, buf_align: 0
warning: alloc - success - len: 4, ptr_align: 0
warning: shrink - success - 4 to 4, buf_align: 0
warning: alloc - success - len: 11, ptr_align: 0
warning: shrink - success - 11 to 11, buf_align: 0
warning: alloc - success - len: 14, ptr_align: 0
warning: shrink - success - 14 to 14, buf_align: 0
warning: alloc - success - len: 12, ptr_align: 0
warning: shrink - success - 12 to 12, buf_align: 0
warning: alloc - success - len: 16, ptr_align: 0
warning: shrink - success - 16 to 16, buf_align: 0
warning: alloc - success - len: 17, ptr_align: 0
warning: shrink - success - 17 to 17, buf_align: 0
warning: alloc - success - len: 22, ptr_align: 0
warning: shrink - success - 22 to 22, buf_align: 0
warning: alloc - success - len: 12, ptr_align: 0
warning: shrink - success - 12 to 12, buf_align: 0
warning: alloc - success - len: 16, ptr_align: 0
warning: shrink - success - 16 to 16, buf_align: 0
warning: alloc - success - len: 6, ptr_align: 0
warning: shrink - success - 6 to 6, buf_align: 0
warning: alloc - success - len: 4, ptr_align: 0
warning: shrink - success - 4 to 4, buf_align: 0
warning: alloc - success - len: 12, ptr_align: 0
warning: shrink - success - 12 to 12, buf_align: 0
warning: alloc - success - len: 51, ptr_align: 0
warning: shrink - success - 51 to 51, buf_align: 0
warning: alloc - success - len: 6, ptr_align: 0
warning: shrink - success - 6 to 6, buf_align: 0
warning: alloc - success - len: 15, ptr_align: 0
warning: shrink - success - 15 to 15, buf_align: 0
warning: alloc - success - len: 7, ptr_align: 0
warning: shrink - success - 7 to 7, buf_align: 0
warning: alloc - success - len: 7, ptr_align: 0
warning: shrink - success - 7 to 7, buf_align: 0
warning: alloc - success - len: 11, ptr_align: 0
warning: shrink - success - 11 to 11, buf_align: 0
warning: alloc - success - len: 7, ptr_align: 0
warning: shrink - success - 7 to 7, buf_align: 0
warning: alloc - success - len: 9, ptr_align: 0
warning: shrink - success - 9 to 9, buf_align: 0
warning: alloc - success - len: 55, ptr_align: 0
warning: shrink - success - 55 to 55, buf_align: 0
warning: alloc - success - len: 7, ptr_align: 0
warning: shrink - success - 7 to 7, buf_align: 0
warning: alloc - success - len: 53, ptr_align: 0
warning: shrink - success - 53 to 53, buf_align: 0
warning: alloc - success - len: 11, ptr_align: 0
warning: shrink - success - 11 to 11, buf_align: 0
warning: alloc - success - len: 2, ptr_align: 0
warning: shrink - success - 2 to 2, buf_align: 0
warning: alloc - success - len: 10, ptr_align: 0
warning: shrink - success - 10 to 10, buf_align: 0
warning: alloc - success - len: 10, ptr_align: 0
warning: shrink - success - 10 to 10, buf_align: 0
warning: alloc - success - len: 4, ptr_align: 0
warning: shrink - success - 4 to 4, buf_align: 0
warning: alloc - success - len: 32, ptr_align: 0
warning: shrink - success - 32 to 32, buf_align: 0
warning: alloc - success - len: 3, ptr_align: 0
warning: shrink - success - 3 to 3, buf_align: 0
warning: alloc - success - len: 32, ptr_align: 0
warning: shrink - success - 32 to 32, buf_align: 0
warning: alloc - success - len: 10, ptr_align: 0
warning: shrink - success - 10 to 10, buf_align: 0
warning: alloc - success - len: 7, ptr_align: 0
warning: shrink - success - 7 to 7, buf_align: 0
warning: alloc - success - len: 8, ptr_align: 0
warning: shrink - success - 8 to 8, buf_align: 0
warning: alloc - success - len: 4, ptr_align: 0
warning: shrink - success - 4 to 4, buf_align: 0
warning: alloc - success - len: 4248, ptr_align: 3
warning: free - len: 2136
warning: alloc - success - len: 11, ptr_align: 0
warning: shrink - success - 11 to 11, buf_align: 0
warning: alloc - success - len: 13, ptr_align: 0
warning: shrink - success - 13 to 13, buf_align: 0
warning: alloc - success - len: 21, ptr_align: 0
warning: shrink - success - 21 to 21, buf_align: 0
warning: alloc - success - len: 35, ptr_align: 0
warning: shrink - success - 35 to 35, buf_align: 0
warning: alloc - success - len: 8, ptr_align: 0
warning: shrink - success - 8 to 8, buf_align: 0
warning: alloc - success - len: 66, ptr_align: 0
warning: shrink - success - 66 to 66, buf_align: 0
warning: alloc - success - len: 14, ptr_align: 0
warning: shrink - success - 14 to 14, buf_align: 0
warning: alloc - success - len: 66, ptr_align: 0
warning: shrink - success - 66 to 66, buf_align: 0
warning: alloc - success - len: 13, ptr_align: 0
warning: shrink - success - 13 to 13, buf_align: 0
warning: alloc - success - len: 63, ptr_align: 0
warning: shrink - success - 63 to 63, buf_align: 0
warning: alloc - success - len: 6, ptr_align: 0
warning: shrink - success - 6 to 6, buf_align: 0
warning: alloc - success - len: 10, ptr_align: 0
warning: shrink - success - 10 to 10, buf_align: 0
warning: alloc - success - len: 66, ptr_align: 0
warning: free - len: 8
warning: free - len: 20
warning: free - len: 15
warning: free - len: 1
warning: free - len: 9
warning: free - len: 55
warning: free - len: 14
warning: free - len: 66
warning: free - len: 15
warning: free - len: 14
warning: free - len: 18
warning: free - len: 29
warning: free - len: 6
warning: free - len: 6
warning: free - len: 11
warning: free - len: 9
warning: free - len: 12
warning: free - len: 32
warning: free - len: 18
warning: free - len: 4
warning: free - len: 11
warning: free - len: 13
warning: free - len: 8
warning: free - len: 66
warning: free - len: 13
warning: free - len: 63
warning: free - len: 16
warning: free - len: 2
warning: free - len: 10
warning: free - len: 10
warning: free - len: 23
warning: free - len: 35
warning: free - len: 8
warning: free - len: 4
warning: free - len: 4
warning: free - len: 1545
warning: free - len: 20
warning: free - len: 19
warning: free - len: 6
warning: free - len: 16
warning: free - len: 7
warning: free - len: 29
warning: free - len: 12
warning: free - len: 7
warning: free - len: 12
warning: free - len: 37
warning: free - len: 9
warning: free - len: 8
warning: free - len: 4
warning: free - len: 32
warning: free - len: 11
warning: free - len: 14
warning: free - len: 12
warning: free - len: 16
warning: free - len: 21
warning: free - len: 35
warning: free - len: 17
warning: free - len: 22
warning: free - len: 8
warning: free - len: 43
warning: free - len: 20
warning: free - len: 1
warning: free - len: 18
warning: free - len: 29
warning: free - len: 11
warning: free - len: 7
warning: free - len: 12
warning: free - len: 16
warning: free - len: 2
warning: free - len: 10
warning: free - len: 7
warning: free - len: 53
warning: free - len: 3
warning: free - len: 7
warning: free - len: 9
warning: free - len: 2
warning: free - len: 12
warning: free - len: 27
warning: free - len: 7
warning: free - len: 62
warning: free - len: 6
warning: free - len: 15
warning: free - len: 10
warning: free - len: 7
warning: free - len: 9
warning: free - len: 34
warning: free - len: 3
warning: free - len: 32
warning: free - len: 3
warning: free - len: 3
warning: free - len: 6
warning: free - len: 4
warning: free - len: 11
warning: free - len: 2
warning: free - len: 20
warning: free - len: 50
warning: free - len: 7
warning: free - len: 7
warning: free - len: 25
warning: free - len: 3
warning: free - len: 8
warning: free - len: 11
warning: free - len: 7
warning: free - len: 27
warning: free - len: 13
warning: free - len: 19
warning: free - len: 6
warning: free - len: 10
warning: free - len: 7
warning: free - len: 53
warning: free - len: 22
warning: free - len: 5
warning: free - len: 12
warning: free - len: 51
warning: free - len: 3
warning: free - len: 19
warning: free - len: 4248
warning(MsvcLibDir.find): full_path = C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\Tools\
warning: free - len: 66
warning(ZigWindowsSDK.find): msvc_lib_dir = null
warning: free - len: 38
warning: free - len: 12
warning: free - len: 39
warning: free - len: 3
error: unable to detect native libc: LibCStdLibHeaderNotFound

squeek502 avatar Jun 05 '23 06:06 squeek502

Latest version seems to have regressed detection on my Windows 7 install. Here are the latest results for my Windows 10 and Windows 7 installs:

Should work now.

BratishkaErik avatar Jun 05 '23 11:06 BratishkaErik

Latest results:

Windows 10
warning(RegistryUtf8.getString): subkey = 
warning(RegistryUtf8.getString): value_name = InstallationFolder
warning(RegistryUtf16Le.getString): value_utf16le_buf_size from first call = 82
warning: alloc - success - len: 82, ptr_align: 1
warning(RegistryUtf16Le.getString): value_utf16le_buf_size from second call = 80
warning(RegistryUtf16Le.getString): value_utf16le.len = 39 (without terminating character), so value_utf16le_buf actual size = 78 (without terminating character)
warning: shrink - success - 82 to 78, buf_align: 1
warning: alloc - success - len: 39, ptr_align: 0
warning: shrink - success - 39 to 39, buf_align: 0
warning(RegistryUtf8.getString): value_utf8 = C:\Program Files (x86)\Windows Kits\10\
warning: free - len: 78
warning(Windows10Sdk.find.path10): path_maybe_with_trailing_slash = C:\Program Files (x86)\Windows Kits\10\
warning: shrink - success - 39 to 38, buf_align: 0
warning(Windows10Sdk.find.path10): path_without_trailing_slash = C:\Program Files (x86)\Windows Kits\10
warning(Windows10Sdk.find): path = C:\Program Files (x86)\Windows Kits\10
warning(RegistryUtf8.getString): subkey = 
warning(RegistryUtf8.getString): value_name = ProductVersion
warning(RegistryUtf16Le.getString): value_utf16le_buf_size from first call = 24
warning: alloc - success - len: 24, ptr_align: 1
warning(RegistryUtf16Le.getString): value_utf16le_buf_size from second call = 22
warning(RegistryUtf16Le.getString): value_utf16le.len = 10 (without terminating character), so value_utf16le_buf actual size = 20 (without terminating character)
warning: shrink - success - 24 to 20, buf_align: 1
warning: alloc - success - len: 10, ptr_align: 0
warning: shrink - success - 10 to 10, buf_align: 0
warning(RegistryUtf8.getString): value_utf8 = 10.0.22621
warning: free - len: 20
warning(Windows10Sdk.find.version10): version_without_0 = 10.0.22621
warning: expand - failure - 10 to 23, buf_align: 0
warning: alloc - success - len: 23, ptr_align: 0
warning: free - len: 10
warning: shrink - success - 23 to 12, buf_align: 0
warning(Windows10Sdk.find.version10): version_with_0 = 10.0.22621.0
warning(Windows10Sdk.find): version = 10.0.22621.0
warning(ZigWindowsSDK.find): windows10sdk is null = false
warning(ZigWindowsSDK.find): windows10sdk.path = C:\Program Files (x86)\Windows Kits\10, windows10sdk.version = 10.0.22621.0
warning(RegistryUtf8.getString): subkey = 
warning(RegistryUtf8.getString): value_name = KitsRoot81
warning(RegistryUtf16Le.getString): value_utf16le_buf_size from first call = 0
warning(ZigWindowsSDK.find): windows81sdk is null = true
warning: alloc - success - len: 27, ptr_align: 0
warning: shrink - success - 27 to 27, buf_align: 0
warning: alloc - success - len: 51, ptr_align: 0
warning: free - len: 27
warning(MsvcLibDir.findViaRegistry): visualstudio_folder_path = C:\Users\Ryan\AppData\Local\Microsoft\VisualStudio\
warning(MsvcLibDir.findViaRegistry.vs_version.iterate_folder): subfolder_name = 17.0_80a758ca
warning(MsvcLibDir.findViaRegistry.vs_version.iterate_folder): subfolder_name (before replacing _ with .) = 17.0_80a758ca
warning(MsvcLibDir.findViaRegistry.vs_version.iterate_folder): subfolder_name (after  replacing _ with .) = 17.0.80a758ca
warning(MsvcLibDir.findViaRegistry.vs_version.iterate_folder): subfolder_name_normalized = 17.0.0+build.80a758ca
warning(MsvcLibDir.findViaRegistry.vs_version.iterate_folder): subfolder_name_normalized as SemVer = 17.0.0+build.80a758ca
warning(MsvcLibDir.findViaRegistry.vs_version.iterate_folder): previous_subfolder_name_normalized = 0.0.0+build.0
warning(MsvcLibDir.findViaRegistry.vs_version.iterate_folder): previous_subfolder_name_normalized as SemVer = 0.0.0+build.0
warning(MsvcLibDir.findViaRegistry.vs_version.iterate_folder): subfolder_name = BackupFiles
warning(MsvcLibDir.findViaRegistry.vs_version.iterate_folder): subfolder_name_normalized = BackupFiles.0.0+build.0
warning(MsvcLibDir.findViaRegistry.vs_version.iterate_folder): subfolder_name_normalized as SemVer = error.InvalidVersion
warning(MsvcLibDir.findViaRegistry.vs_version.iterate_folder): subfolder_name = CacheService
warning(MsvcLibDir.findViaRegistry.vs_version.iterate_folder): subfolder_name_normalized = CacheService.0.0+build.0
warning(MsvcLibDir.findViaRegistry.vs_version.iterate_folder): subfolder_name_normalized as SemVer = error.InvalidVersion
warning(MsvcLibDir.findViaRegistry.vs_version.iterate_folder): subfolder_name = Packages
warning(MsvcLibDir.findViaRegistry.vs_version.iterate_folder): subfolder_name_normalized = Packages.0.0+build.0
warning(MsvcLibDir.findViaRegistry.vs_version.iterate_folder): subfolder_name_normalized as SemVer = error.InvalidVersion
warning(MsvcLibDir.findViaRegistry.vs_version.iterate_folder): subfolder_name = RemoteSettings
warning(MsvcLibDir.findViaRegistry.vs_version.iterate_folder): subfolder_name_normalized = RemoteSettings.0.0+build.0
warning(MsvcLibDir.findViaRegistry.vs_version.iterate_folder): subfolder_name_normalized as SemVer = error.InvalidVersion
warning(MsvcLibDir.findViaRegistry.vs_version.iterate_folder): subfolder_name = Roslyn
warning(MsvcLibDir.findViaRegistry.vs_version.iterate_folder): subfolder_name_normalized = Roslyn.0.0+build.0
warning(MsvcLibDir.findViaRegistry.vs_version.iterate_folder): subfolder_name_normalized as SemVer = error.InvalidVersion
warning(MsvcLibDir.findViaRegistry.vs_version.iterate_folder): subfolder_name = SettingsLogs
warning(MsvcLibDir.findViaRegistry.vs_version.iterate_folder): subfolder_name_normalized = SettingsLogs.0.0+build.0
warning(MsvcLibDir.findViaRegistry.vs_version.iterate_folder): subfolder_name_normalized as SemVer = error.InvalidVersion
warning(MsvcLibDir.findViaRegistry.vs_version.iterate_folder): subfolder_name = vshub
warning(MsvcLibDir.findViaRegistry.vs_version.iterate_folder): subfolder_name_normalized = vshub.0.0+build.0
warning(MsvcLibDir.findViaRegistry.vs_version.iterate_folder): subfolder_name_normalized as SemVer = error.InvalidVersion
warning(MsvcLibDir.findViaRegistry.vs_version.iterate_folder): subfolder_name = WebView2Cache
warning(MsvcLibDir.findViaRegistry.vs_version.iterate_folder): subfolder_name_normalized = WebView2Cache.0.0+build.0
warning(MsvcLibDir.findViaRegistry.vs_version.iterate_folder): subfolder_name_normalized as SemVer = error.InvalidVersion
warning(MsvcLibDir.findViaRegistry.vs_version): version = 17.0_80a758ca
warning(MsvcLibDir.findViaRegistry): vs_version = 17.0_80a758ca
warning: alloc - success - len: 84, ptr_align: 0
warning(MsvcLibDir.findViaRegistry): privateregistry_absolute_path = C:\Users\Ryan\AppData\Local\Microsoft\VisualStudio\17.0_80a758ca\privateregistry.bin
warning(RegistryUtf16Le.loadFromPath): return_code = SUCCESS
warning(MsvcLibDir.findViaRegistry): loadFromPath successfully!
warning: alloc - success - len: 52, ptr_align: 0
warning(MsvcLibDir.findViaRegistry): config_subkey = Software\Microsoft\VisualStudio\17.0_80a758ca_Config
warning(RegistryUtf8.getString): subkey = Software\Microsoft\VisualStudio\17.0_80a758ca_Config
warning(RegistryUtf8.getString): value_name = Source Directories
warning(RegistryUtf16Le.getString): value_utf16le_buf_size from first call = 3088
warning: alloc - success - len: 3088, ptr_align: 1
warning(RegistryUtf16Le.getString): value_utf16le_buf_size from second call = 3086
warning(RegistryUtf16Le.getString): value_utf16le.len = 1542 (without terminating character), so value_utf16le_buf actual size = 3084 (without terminating character)
warning: shrink - success - 3088 to 3084, buf_align: 1
warning: alloc - success - len: 1542, ptr_align: 0
warning: shrink - success - 1542 to 1542, buf_align: 0
warning(RegistryUtf8.getString): value_utf8 = C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\include\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\include\cvt\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\include\msclr\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\include\sys\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\crt\src\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\crt\src\x64\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\crt\src\arm\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\crt\src\concrt\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\crt\src\i386\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\crt\src\linkopts\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\crt\src\stl\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\crt\src\vccorlib\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\crt\src\vcruntime\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\src\mfc\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\src\atl\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\
warning: free - len: 3084
warning(MsvcLibDir.findViaRegistry.source_directories): source_directories_value.len = 1542
warning(MsvcLibDir.findViaRegistry): source_directories = C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\include\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\include\cvt\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\include\msclr\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\include\sys\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\crt\src\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\crt\src\x64\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\crt\src\arm\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\crt\src\concrt\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\crt\src\i386\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\crt\src\linkopts\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\crt\src\stl\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\crt\src\vccorlib\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\crt\src\vcruntime\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\src\mfc\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\src\atl\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\
warning(MsvcLibDir.findViaRegistry): value of SourceDirectories in VisualStudio registry, separated: 
warning(MsvcLibDir.findViaRegistry): 0: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\include\
warning(MsvcLibDir.findViaRegistry): 1: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\include\cvt\
warning(MsvcLibDir.findViaRegistry): 2: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\include\msclr\
warning(MsvcLibDir.findViaRegistry): 3: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\include\sys\
warning(MsvcLibDir.findViaRegistry): 4: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\crt\src\
warning(MsvcLibDir.findViaRegistry): 5: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\crt\src\x64\
warning(MsvcLibDir.findViaRegistry): 6: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\crt\src\arm\
warning(MsvcLibDir.findViaRegistry): 7: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\crt\src\concrt\
warning(MsvcLibDir.findViaRegistry): 8: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\crt\src\i386\
warning(MsvcLibDir.findViaRegistry): 9: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\crt\src\linkopts\
warning(MsvcLibDir.findViaRegistry): 10: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\crt\src\stl\
warning(MsvcLibDir.findViaRegistry): 11: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\crt\src\vccorlib\
warning(MsvcLibDir.findViaRegistry): 12: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\crt\src\vcruntime\
warning(MsvcLibDir.findViaRegistry): 13: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\src\mfc\
warning(MsvcLibDir.findViaRegistry): 14: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\src\atl\
warning(MsvcLibDir.findViaRegistry): 15: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\
warning: alloc - success - len: 90, ptr_align: 0
warning(MsvcLibDir.findViaRegistry.msvc_dir): msvc_include_dir_maybe_with_trailing_slash = C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\include\
warning: shrink - success - 90 to 89, buf_align: 0
warning(MsvcLibDir.findViaRegistry.msvc_dir): msvc_dir_with_arch = C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\Lib\x64
warning: free - len: 1542
warning: free - len: 52
warning: free - len: 84
warning: free - len: 51
warning(MsvcLibDir.find): full_path = C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\Lib\x64
warning(ZigWindowsSDK.find): msvc_lib_dir = C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\Lib\x64
warning: free - len: 38
warning: free - len: 12
warning: free - len: 89
# The directory that contains `stdlib.h`.
# On POSIX-like systems, include directories be found with: `cc -E -Wp,-v -xc /dev/null`
include_dir=C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt

# The system-specific include directory. May be the same as `include_dir`.
# On Windows it's the directory that includes `vcruntime.h`.
# On POSIX it's the directory that includes `sys/errno.h`.
sys_include_dir=C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\include

# The directory that contains `crt1.o` or `crt2.o`.
# On POSIX, can be found with `cc -print-file-name=crt1.o`.
# Not needed when targeting MacOS.
crt_dir=C:\Program Files (x86)\Windows Kits\10\Lib\10.0.22621.0\ucrt\x64

# The directory that contains `vcruntime.lib`.
# Only needed when targeting MSVC on Windows.
msvc_lib_dir=C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\Lib\x64

# The directory that contains `kernel32.lib`.
# Only needed when targeting MSVC on Windows.
kernel32_lib_dir=C:\Program Files (x86)\Windows Kits\10\Lib\10.0.22621.0\um\x64

# The directory that contains `crtbeginS.o` and `crtendS.o`
# Only needed when targeting Haiku.
gcc_dir=
Windows 7
warning(RegistryUtf8.getString): subkey = 
warning(RegistryUtf8.getString): value_name = InstallationFolder
warning(RegistryUtf16Le.getString): value_utf16le_buf_size from first call = 82
warning: alloc - success - len: 82, ptr_align: 1
warning(RegistryUtf16Le.getString): value_utf16le_buf_size from second call = 80
warning(RegistryUtf16Le.getString): value_utf16le.len = 39 (without terminating character), so value_utf16le_buf actual size = 78 (without terminating character)
warning: shrink - success - 82 to 78, buf_align: 1
warning: alloc - success - len: 39, ptr_align: 0
warning: shrink - success - 39 to 39, buf_align: 0
warning(RegistryUtf8.getString): value_utf8 = C:\Program Files (x86)\Windows Kits\10\
warning: free - len: 78
warning(Windows10Sdk.find.path10): path_maybe_with_trailing_slash = C:\Program Files (x86)\Windows Kits\10\
warning: shrink - success - 39 to 38, buf_align: 0
warning(Windows10Sdk.find.path10): path_without_trailing_slash = C:\Program Files (x86)\Windows Kits\10
warning(Windows10Sdk.find): path = C:\Program Files (x86)\Windows Kits\10
warning(RegistryUtf8.getString): subkey = 
warning(RegistryUtf8.getString): value_name = ProductVersion
warning(RegistryUtf16Le.getString): value_utf16le_buf_size from first call = 24
warning: alloc - success - len: 24, ptr_align: 1
warning(RegistryUtf16Le.getString): value_utf16le_buf_size from second call = 22
warning(RegistryUtf16Le.getString): value_utf16le.len = 10 (without terminating character), so value_utf16le_buf actual size = 20 (without terminating character)
warning: shrink - success - 24 to 20, buf_align: 1
warning: alloc - success - len: 10, ptr_align: 0
warning: shrink - success - 10 to 10, buf_align: 0
warning(RegistryUtf8.getString): value_utf8 = 10.0.17134
warning: free - len: 20
warning(Windows10Sdk.find.version10): version_without_0 = 10.0.17134
warning: expand - failure - 10 to 23, buf_align: 0
warning: alloc - success - len: 23, ptr_align: 0
warning: free - len: 10
warning: shrink - success - 23 to 12, buf_align: 0
warning(Windows10Sdk.find.version10): version_with_0 = 10.0.17134.0
warning(Windows10Sdk.find): version = 10.0.17134.0
warning(ZigWindowsSDK.find): windows10sdk is null = false
warning(ZigWindowsSDK.find): windows10sdk.path = C:\Program Files (x86)\Windows Kits\10, windows10sdk.version = 10.0.17134.0
warning(RegistryUtf8.getString): subkey = 
warning(RegistryUtf8.getString): value_name = KitsRoot81
warning(RegistryUtf16Le.getString): value_utf16le_buf_size from first call = 84
warning: alloc - success - len: 84, ptr_align: 1
warning(RegistryUtf16Le.getString): value_utf16le_buf_size from second call = 82
warning(RegistryUtf16Le.getString): value_utf16le.len = 40 (without terminating character), so value_utf16le_buf actual size = 80 (without terminating character)
warning: shrink - success - 84 to 80, buf_align: 1
warning: alloc - success - len: 40, ptr_align: 0
warning: shrink - success - 40 to 40, buf_align: 0
warning(RegistryUtf8.getString): value_utf8 = C:\Program Files (x86)\Windows Kits\8.1\
warning: free - len: 80
warning(Windows81Sdk.find.path81): path_maybe_with_trailing_slash = C:\Program Files (x86)\Windows Kits\8.1\
warning: shrink - success - 40 to 39, buf_align: 0
warning(Windows81Sdk.find.path81): path_without_trailing_slash = C:\Program Files (x86)\Windows Kits\8.1
warning(Windows81Sdk.find): path = C:\Program Files (x86)\Windows Kits\8.1
warning(Windows81Sdk.find.version81): sdk_lib_dir_path = C:\Program Files (x86)\Windows Kits\8.1\Lib\
warning(Windows81Sdk.find.version81.iterate_folder): subfolder_name (possibly with "winv" prefix) = winv6.3
warning(Windows81Sdk.find.version81.iterate_folder): subfolder_name = 6.3
warning(Windows81Sdk.find.version81.iterate_folder): subfolder_name_normalized = 6.3.0+build.0
warning(Windows81Sdk.find.version81.iterate_folder): subfolder_name_normalized as SemVer = 6.3.0+build.0
warning(Windows81Sdk.find.version81.iterate_folder): previous_subfolder_name_normalized = 0.0.0+build.0
warning(Windows81Sdk.find.version81.iterate_folder): previous_subfolder_name_normalized as SemVer = 0.0.0+build.0
warning(Windows81Sdk.find.version81): version = 6.3
warning: alloc - success - len: 3, ptr_align: 0
warning(Windows81Sdk.find): version = 6.3
warning(ZigWindowsSDK.find): windows81sdk is null = false
warning(ZigWindowsSDK.find): windows81sdk.path = C:\Program Files (x86)\Windows Kits\8.1, windows81sdk.version = 6.3
warning: alloc - success - len: 27, ptr_align: 0
warning: shrink - success - 27 to 27, buf_align: 0
warning: alloc - success - len: 51, ptr_align: 0
warning: free - len: 27
warning(MsvcLibDir.findViaRegistry): visualstudio_folder_path = C:\Users\Ryan\AppData\Local\Microsoft\VisualStudio\
warning(MsvcLibDir.findViaRegistry.vs_version.iterate_folder): subfolder_name = 14.0
warning(MsvcLibDir.findViaRegistry.vs_version.iterate_folder): subfolder_name_normalized = 14.0.0+build.0
warning(MsvcLibDir.findViaRegistry.vs_version.iterate_folder): subfolder_name_normalized as SemVer = 14.0.0+build.0
warning(MsvcLibDir.findViaRegistry.vs_version.iterate_folder): previous_subfolder_name_normalized = 0.0.0+build.0
warning(MsvcLibDir.findViaRegistry.vs_version.iterate_folder): previous_subfolder_name_normalized as SemVer = 0.0.0+build.0
warning(MsvcLibDir.findViaRegistry.vs_version.iterate_folder): subfolder_name = 15.0
warning(MsvcLibDir.findViaRegistry.vs_version.iterate_folder): subfolder_name_normalized = 15.0.0+build.0
warning(MsvcLibDir.findViaRegistry.vs_version.iterate_folder): subfolder_name_normalized as SemVer = 15.0.0+build.0
warning(MsvcLibDir.findViaRegistry.vs_version.iterate_folder): previous_subfolder_name_normalized = 14.0.0+build.0
warning(MsvcLibDir.findViaRegistry.vs_version.iterate_folder): previous_subfolder_name_normalized as SemVer = 14.0.0+build.0
warning(MsvcLibDir.findViaRegistry.vs_version.iterate_folder): subfolder_name = 15.0_6b9e52af
warning(MsvcLibDir.findViaRegistry.vs_version.iterate_folder): subfolder_name (before replacing _ with .) = 15.0_6b9e52af
warning(MsvcLibDir.findViaRegistry.vs_version.iterate_folder): subfolder_name (after  replacing _ with .) = 15.0.6b9e52af
warning(MsvcLibDir.findViaRegistry.vs_version.iterate_folder): subfolder_name_normalized = 15.0.0+build.6b9e52af
warning(MsvcLibDir.findViaRegistry.vs_version.iterate_folder): subfolder_name_normalized as SemVer = 15.0.0+build.6b9e52af
warning(MsvcLibDir.findViaRegistry.vs_version.iterate_folder): previous_subfolder_name_normalized = 15.0.0+build.0
warning(MsvcLibDir.findViaRegistry.vs_version.iterate_folder): previous_subfolder_name_normalized as SemVer = 15.0.0+build.0
warning(MsvcLibDir.findViaRegistry.vs_version.iterate_folder): subfolder_name = Packages
warning(MsvcLibDir.findViaRegistry.vs_version.iterate_folder): subfolder_name_normalized = Packages.0.0+build.0
warning(MsvcLibDir.findViaRegistry.vs_version.iterate_folder): subfolder_name_normalized as SemVer = error.InvalidVersion
warning(MsvcLibDir.findViaRegistry.vs_version.iterate_folder): subfolder_name = SettingsLogs
warning(MsvcLibDir.findViaRegistry.vs_version.iterate_folder): subfolder_name_normalized = SettingsLogs.0.0+build.0
warning(MsvcLibDir.findViaRegistry.vs_version.iterate_folder): subfolder_name_normalized as SemVer = error.InvalidVersion
warning(MsvcLibDir.findViaRegistry.vs_version.iterate_folder): subfolder_name = vshub
warning(MsvcLibDir.findViaRegistry.vs_version.iterate_folder): subfolder_name_normalized = vshub.0.0+build.0
warning(MsvcLibDir.findViaRegistry.vs_version.iterate_folder): subfolder_name_normalized as SemVer = error.InvalidVersion
warning(MsvcLibDir.findViaRegistry.vs_version): version = 15.0
warning(MsvcLibDir.findViaRegistry): vs_version = 15.0
warning: alloc - success - len: 75, ptr_align: 0
warning(MsvcLibDir.findViaRegistry): privateregistry_absolute_path = C:\Users\Ryan\AppData\Local\Microsoft\VisualStudio\15.0\privateregistry.bin
warning(RegistryUtf16Le.loadFromPath): return_code = SUCCESS
warning(MsvcLibDir.findViaRegistry): loadFromPath successfully!
warning: alloc - success - len: 43, ptr_align: 0
warning(MsvcLibDir.findViaRegistry): config_subkey = Software\Microsoft\VisualStudio\15.0_Config
warning(RegistryUtf8.getString): subkey = Software\Microsoft\VisualStudio\15.0_Config
warning(RegistryUtf8.getString): value_name = Source Directories
warning(RegistryUtf16Le.getString): value_utf16le_buf_size from first call = 0
warning: free - len: 43
warning: free - len: 75
warning: free - len: 51
warning: alloc - success - len: 3, ptr_align: 0
warning: shrink - success - 3 to 3, buf_align: 0
warning: alloc - success - len: 3, ptr_align: 0
warning: shrink - success - 3 to 3, buf_align: 0
warning: alloc - success - len: 288, ptr_align: 3
warning: alloc - success - len: 3, ptr_align: 0
warning: shrink - success - 3 to 3, buf_align: 0
warning: alloc - success - len: 19, ptr_align: 0
warning: shrink - success - 19 to 19, buf_align: 0
warning: alloc - success - len: 9, ptr_align: 0
warning: shrink - success - 9 to 9, buf_align: 0
warning: alloc - success - len: 8, ptr_align: 0
warning: shrink - success - 8 to 8, buf_align: 0
warning: alloc - success - len: 3, ptr_align: 0
warning: shrink - success - 3 to 3, buf_align: 0
warning: alloc - success - len: 7, ptr_align: 0
warning: shrink - success - 7 to 7, buf_align: 0
warning: alloc - success - len: 15, ptr_align: 0
warning: shrink - success - 15 to 15, buf_align: 0
warning: alloc - success - len: 14, ptr_align: 0
warning: shrink - success - 14 to 14, buf_align: 0
warning: alloc - success - len: 7, ptr_align: 0
warning: shrink - success - 7 to 7, buf_align: 0
warning: alloc - success - len: 29, ptr_align: 0
warning: shrink - success - 29 to 29, buf_align: 0
warning: alloc - success - len: 18, ptr_align: 0
warning: shrink - success - 18 to 18, buf_align: 0
warning: alloc - success - len: 29, ptr_align: 0
warning: shrink - success - 29 to 29, buf_align: 0
warning: alloc - success - len: 552, ptr_align: 3
warning: free - len: 288
warning: alloc - success - len: 23, ptr_align: 0
warning: shrink - success - 23 to 23, buf_align: 0
warning: alloc - success - len: 35, ptr_align: 0
warning: shrink - success - 35 to 35, buf_align: 0
warning: alloc - success - len: 18, ptr_align: 0
warning: shrink - success - 18 to 18, buf_align: 0
warning: alloc - success - len: 29, ptr_align: 0
warning: shrink - success - 29 to 29, buf_align: 0
warning: alloc - success - len: 12, ptr_align: 0
warning: shrink - success - 12 to 12, buf_align: 0
warning: alloc - success - len: 7, ptr_align: 0
warning: shrink - success - 7 to 7, buf_align: 0
warning: alloc - success - len: 7, ptr_align: 0
warning: shrink - success - 7 to 7, buf_align: 0
warning: alloc - success - len: 27, ptr_align: 0
warning: shrink - success - 27 to 27, buf_align: 0
warning: alloc - success - len: 16, ptr_align: 0
warning: shrink - success - 16 to 16, buf_align: 0
warning: alloc - success - len: 2, ptr_align: 0
warning: shrink - success - 2 to 2, buf_align: 0
warning: alloc - success - len: 7, ptr_align: 0
warning: shrink - success - 7 to 7, buf_align: 0
warning: alloc - success - len: 53, ptr_align: 0
warning: shrink - success - 53 to 53, buf_align: 0
warning: alloc - success - len: 1080, ptr_align: 3
warning: free - len: 552
warning: alloc - success - len: 6, ptr_align: 0
warning: shrink - success - 6 to 6, buf_align: 0
warning: alloc - success - len: 16, ptr_align: 0
warning: shrink - success - 16 to 16, buf_align: 0
warning: alloc - success - len: 6, ptr_align: 0
warning: shrink - success - 6 to 6, buf_align: 0
warning: alloc - success - len: 6, ptr_align: 0
warning: shrink - success - 6 to 6, buf_align: 0
warning: alloc - success - len: 20, ptr_align: 0
warning: shrink - success - 20 to 20, buf_align: 0
warning: alloc - success - len: 19, ptr_align: 0
warning: shrink - success - 19 to 19, buf_align: 0
warning: alloc - success - len: 12, ptr_align: 0
warning: shrink - success - 12 to 12, buf_align: 0
warning: alloc - success - len: 37, ptr_align: 0
warning: shrink - success - 37 to 37, buf_align: 0
warning: alloc - success - len: 8, ptr_align: 0
warning: shrink - success - 8 to 8, buf_align: 0
warning: alloc - success - len: 20, ptr_align: 0
warning: shrink - success - 20 to 20, buf_align: 0
warning: alloc - success - len: 9, ptr_align: 0
warning: shrink - success - 9 to 9, buf_align: 0
warning: alloc - success - len: 2, ptr_align: 0
warning: shrink - success - 2 to 2, buf_align: 0
warning: alloc - success - len: 8, ptr_align: 0
warning: shrink - success - 8 to 8, buf_align: 0
warning: alloc - success - len: 11, ptr_align: 0
warning: shrink - success - 11 to 11, buf_align: 0
warning: alloc - success - len: 9, ptr_align: 0
warning: shrink - success - 9 to 9, buf_align: 0
warning: alloc - success - len: 34, ptr_align: 0
warning: shrink - success - 34 to 34, buf_align: 0
warning: alloc - success - len: 8, ptr_align: 0
warning: shrink - success - 8 to 8, buf_align: 0
warning: alloc - success - len: 43, ptr_align: 0
warning: shrink - success - 43 to 43, buf_align: 0
warning: alloc - success - len: 12, ptr_align: 0
warning: shrink - success - 12 to 12, buf_align: 0
warning: alloc - success - len: 27, ptr_align: 0
warning: shrink - success - 27 to 27, buf_align: 0
warning: alloc - success - len: 11, ptr_align: 0
warning: shrink - success - 11 to 11, buf_align: 0
warning: alloc - success - len: 9, ptr_align: 0
warning: shrink - success - 9 to 9, buf_align: 0
warning: alloc - success - len: 13, ptr_align: 0
warning: shrink - success - 13 to 13, buf_align: 0
warning: alloc - success - len: 19, ptr_align: 0
warning: shrink - success - 19 to 19, buf_align: 0
warning: alloc - success - len: 20, ptr_align: 0
warning: shrink - success - 20 to 20, buf_align: 0
warning: alloc - success - len: 1, ptr_align: 0
warning: shrink - success - 1 to 1, buf_align: 0
warning: alloc - success - len: 2136, ptr_align: 3
warning: free - len: 1080
warning: alloc - success - len: 12, ptr_align: 0
warning: shrink - success - 12 to 12, buf_align: 0
warning: alloc - success - len: 32, ptr_align: 0
warning: shrink - success - 32 to 32, buf_align: 0
warning: alloc - success - len: 2, ptr_align: 0
warning: shrink - success - 2 to 2, buf_align: 0
warning: alloc - success - len: 10, ptr_align: 0
warning: shrink - success - 10 to 10, buf_align: 0
warning: alloc - success - len: 4, ptr_align: 0
warning: shrink - success - 4 to 4, buf_align: 0
warning: alloc - success - len: 1545, ptr_align: 0
warning: shrink - success - 1545 to 1545, buf_align: 0
warning: alloc - success - len: 7, ptr_align: 0
warning: shrink - success - 7 to 7, buf_align: 0
warning: alloc - success - len: 62, ptr_align: 0
warning: shrink - success - 62 to 62, buf_align: 0
warning: alloc - success - len: 25, ptr_align: 0
warning: shrink - success - 25 to 25, buf_align: 0
warning: alloc - success - len: 3, ptr_align: 0
warning: shrink - success - 3 to 3, buf_align: 0
warning: alloc - success - len: 22, ptr_align: 0
warning: shrink - success - 22 to 22, buf_align: 0
warning: alloc - success - len: 5, ptr_align: 0
warning: shrink - success - 5 to 5, buf_align: 0
warning: alloc - success - len: 20, ptr_align: 0
warning: shrink - success - 20 to 20, buf_align: 0
warning: alloc - success - len: 50, ptr_align: 0
warning: shrink - success - 50 to 50, buf_align: 0
warning: alloc - success - len: 15, ptr_align: 0
warning: shrink - success - 15 to 15, buf_align: 0
warning: alloc - success - len: 1, ptr_align: 0
warning: shrink - success - 1 to 1, buf_align: 0
warning: alloc - success - len: 18, ptr_align: 0
warning: shrink - success - 18 to 18, buf_align: 0
warning: alloc - success - len: 4, ptr_align: 0
warning: shrink - success - 4 to 4, buf_align: 0
warning: alloc - success - len: 11, ptr_align: 0
warning: shrink - success - 11 to 11, buf_align: 0
warning: alloc - success - len: 14, ptr_align: 0
warning: shrink - success - 14 to 14, buf_align: 0
warning: alloc - success - len: 12, ptr_align: 0
warning: shrink - success - 12 to 12, buf_align: 0
warning: alloc - success - len: 16, ptr_align: 0
warning: shrink - success - 16 to 16, buf_align: 0
warning: alloc - success - len: 17, ptr_align: 0
warning: shrink - success - 17 to 17, buf_align: 0
warning: alloc - success - len: 22, ptr_align: 0
warning: shrink - success - 22 to 22, buf_align: 0
warning: alloc - success - len: 12, ptr_align: 0
warning: shrink - success - 12 to 12, buf_align: 0
warning: alloc - success - len: 16, ptr_align: 0
warning: shrink - success - 16 to 16, buf_align: 0
warning: alloc - success - len: 6, ptr_align: 0
warning: shrink - success - 6 to 6, buf_align: 0
warning: alloc - success - len: 4, ptr_align: 0
warning: shrink - success - 4 to 4, buf_align: 0
warning: alloc - success - len: 12, ptr_align: 0
warning: shrink - success - 12 to 12, buf_align: 0
warning: alloc - success - len: 51, ptr_align: 0
warning: shrink - success - 51 to 51, buf_align: 0
warning: alloc - success - len: 6, ptr_align: 0
warning: shrink - success - 6 to 6, buf_align: 0
warning: alloc - success - len: 15, ptr_align: 0
warning: shrink - success - 15 to 15, buf_align: 0
warning: alloc - success - len: 7, ptr_align: 0
warning: shrink - success - 7 to 7, buf_align: 0
warning: alloc - success - len: 7, ptr_align: 0
warning: shrink - success - 7 to 7, buf_align: 0
warning: alloc - success - len: 11, ptr_align: 0
warning: shrink - success - 11 to 11, buf_align: 0
warning: alloc - success - len: 7, ptr_align: 0
warning: shrink - success - 7 to 7, buf_align: 0
warning: alloc - success - len: 9, ptr_align: 0
warning: shrink - success - 9 to 9, buf_align: 0
warning: alloc - success - len: 55, ptr_align: 0
warning: shrink - success - 55 to 55, buf_align: 0
warning: alloc - success - len: 7, ptr_align: 0
warning: shrink - success - 7 to 7, buf_align: 0
warning: alloc - success - len: 53, ptr_align: 0
warning: shrink - success - 53 to 53, buf_align: 0
warning: alloc - success - len: 11, ptr_align: 0
warning: shrink - success - 11 to 11, buf_align: 0
warning: alloc - success - len: 2, ptr_align: 0
warning: shrink - success - 2 to 2, buf_align: 0
warning: alloc - success - len: 10, ptr_align: 0
warning: shrink - success - 10 to 10, buf_align: 0
warning: alloc - success - len: 10, ptr_align: 0
warning: shrink - success - 10 to 10, buf_align: 0
warning: alloc - success - len: 4, ptr_align: 0
warning: shrink - success - 4 to 4, buf_align: 0
warning: alloc - success - len: 32, ptr_align: 0
warning: shrink - success - 32 to 32, buf_align: 0
warning: alloc - success - len: 3, ptr_align: 0
warning: shrink - success - 3 to 3, buf_align: 0
warning: alloc - success - len: 32, ptr_align: 0
warning: shrink - success - 32 to 32, buf_align: 0
warning: alloc - success - len: 10, ptr_align: 0
warning: shrink - success - 10 to 10, buf_align: 0
warning: alloc - success - len: 7, ptr_align: 0
warning: shrink - success - 7 to 7, buf_align: 0
warning: alloc - success - len: 8, ptr_align: 0
warning: shrink - success - 8 to 8, buf_align: 0
warning: alloc - success - len: 4, ptr_align: 0
warning: shrink - success - 4 to 4, buf_align: 0
warning: alloc - success - len: 4248, ptr_align: 3
warning: free - len: 2136
warning: alloc - success - len: 11, ptr_align: 0
warning: shrink - success - 11 to 11, buf_align: 0
warning: alloc - success - len: 13, ptr_align: 0
warning: shrink - success - 13 to 13, buf_align: 0
warning: alloc - success - len: 21, ptr_align: 0
warning: shrink - success - 21 to 21, buf_align: 0
warning: alloc - success - len: 35, ptr_align: 0
warning: shrink - success - 35 to 35, buf_align: 0
warning: alloc - success - len: 8, ptr_align: 0
warning: shrink - success - 8 to 8, buf_align: 0
warning: alloc - success - len: 66, ptr_align: 0
warning: shrink - success - 66 to 66, buf_align: 0
warning: alloc - success - len: 14, ptr_align: 0
warning: shrink - success - 14 to 14, buf_align: 0
warning: alloc - success - len: 66, ptr_align: 0
warning: shrink - success - 66 to 66, buf_align: 0
warning: alloc - success - len: 13, ptr_align: 0
warning: shrink - success - 13 to 13, buf_align: 0
warning: alloc - success - len: 63, ptr_align: 0
warning: shrink - success - 63 to 63, buf_align: 0
warning: alloc - success - len: 6, ptr_align: 0
warning: shrink - success - 6 to 6, buf_align: 0
warning: alloc - success - len: 10, ptr_align: 0
warning: shrink - success - 10 to 10, buf_align: 0
warning(MsvcLibDir.findViaVs7Key.base_path.try_env): VS140COMNTOOLS = C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\Tools\
warning: alloc - success - len: 105, ptr_align: 0
warning: free - len: 8
warning: free - len: 20
warning: free - len: 15
warning: free - len: 1
warning: free - len: 9
warning: free - len: 55
warning: free - len: 14
warning: free - len: 66
warning: free - len: 15
warning: free - len: 14
warning: free - len: 18
warning: free - len: 29
warning: free - len: 6
warning: free - len: 6
warning: free - len: 11
warning: free - len: 9
warning: free - len: 12
warning: free - len: 32
warning: free - len: 18
warning: free - len: 4
warning: free - len: 11
warning: free - len: 13
warning: free - len: 8
warning: free - len: 66
warning: free - len: 13
warning: free - len: 63
warning: free - len: 16
warning: free - len: 2
warning: free - len: 10
warning: free - len: 10
warning: free - len: 23
warning: free - len: 35
warning: free - len: 8
warning: free - len: 4
warning: free - len: 4
warning: free - len: 1545
warning: free - len: 20
warning: free - len: 19
warning: free - len: 6
warning: free - len: 16
warning: free - len: 7
warning: free - len: 29
warning: free - len: 12
warning: free - len: 7
warning: free - len: 12
warning: free - len: 37
warning: free - len: 9
warning: free - len: 8
warning: free - len: 4
warning: free - len: 32
warning: free - len: 11
warning: free - len: 14
warning: free - len: 12
warning: free - len: 16
warning: free - len: 21
warning: free - len: 35
warning: free - len: 17
warning: free - len: 22
warning: free - len: 8
warning: free - len: 43
warning: free - len: 20
warning: free - len: 1
warning: free - len: 18
warning: free - len: 29
warning: free - len: 11
warning: free - len: 7
warning: free - len: 12
warning: free - len: 16
warning: free - len: 2
warning: free - len: 10
warning: free - len: 7
warning: free - len: 53
warning: free - len: 3
warning: free - len: 7
warning: free - len: 9
warning: free - len: 2
warning: free - len: 12
warning: free - len: 27
warning: free - len: 7
warning: free - len: 62
warning: free - len: 6
warning: free - len: 15
warning: free - len: 10
warning: free - len: 7
warning: free - len: 9
warning: free - len: 34
warning: free - len: 3
warning: free - len: 32
warning: free - len: 3
warning: free - len: 3
warning: free - len: 6
warning: free - len: 4
warning: free - len: 11
warning: free - len: 2
warning: free - len: 20
warning: free - len: 50
warning: free - len: 7
warning: free - len: 7
warning: free - len: 25
warning: free - len: 3
warning: free - len: 8
warning: free - len: 11
warning: free - len: 7
warning: free - len: 27
warning: free - len: 13
warning: free - len: 19
warning: free - len: 6
warning: free - len: 10
warning: free - len: 7
warning: free - len: 53
warning: free - len: 22
warning: free - len: 5
warning: free - len: 12
warning: free - len: 51
warning: free - len: 3
warning: free - len: 19
warning: free - len: 4248
warning: shrink - success - 105 to 64, buf_align: 0
warning(MsvcLibDir.findViaVs7Key): full_path = C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\lib\amd64
warning(MsvcLibDir.find): full_path = C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\lib\amd64
warning(ZigWindowsSDK.find): msvc_lib_dir = C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\lib\amd64
warning: free - len: 38
warning: free - len: 12
warning: free - len: 39
warning: free - len: 3
warning: free - len: 64
# The directory that contains `stdlib.h`.
# On POSIX-like systems, include directories be found with: `cc -E -Wp,-v -xc /dev/null`
include_dir=C:\Program Files (x86)\Windows Kits\10\Include\10.0.17134.0\ucrt

# The system-specific include directory. May be the same as `include_dir`.
# On Windows it's the directory that includes `vcruntime.h`.
# On POSIX it's the directory that includes `sys/errno.h`.
sys_include_dir=C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include

# The directory that contains `crt1.o` or `crt2.o`.
# On POSIX, can be found with `cc -print-file-name=crt1.o`.
# Not needed when targeting MacOS.
crt_dir=C:\Program Files (x86)\Windows Kits\10\Lib\10.0.17134.0\ucrt\x64

# The directory that contains `vcruntime.lib`.
# Only needed when targeting MSVC on Windows.
msvc_lib_dir=C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\lib\amd64

# The directory that contains `kernel32.lib`.
# Only needed when targeting MSVC on Windows.
kernel32_lib_dir=C:\Program Files (x86)\Windows Kits\10\Lib\10.0.17134.0\um\x64

# The directory that contains `crtbeginS.o` and `crtendS.o`
# Only needed when targeting Haiku.
gcc_dir=

Note that the Windows 7 result is different than what it was previously / what it was in the cpp version. Before it was:

# The directory that contains `stdlib.h`.
# On POSIX-like systems, include directories be found with: `cc -E -Wp,-v -xc /dev/null`
include_dir=C:\Program Files (x86)\Windows Kits\10\Include\10.0.17134.0\ucrt

# The system-specific include directory. May be the same as `include_dir`.
# On Windows it's the directory that includes `vcruntime.h`.
# On POSIX it's the directory that includes `sys/errno.h`.
sys_include_dir=C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.15.26726\include

# The directory that contains `crt1.o` or `crt2.o`.
# On POSIX, can be found with `cc -print-file-name=crt1.o`.
# Not needed when targeting MacOS.
crt_dir=C:\Program Files (x86)\Windows Kits\10\Lib\10.0.17134.0\ucrt\x64

# The directory that contains `vcruntime.lib`.
# Only needed when targeting MSVC on Windows.
msvc_lib_dir=C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.15.26726\Lib\x64

# The directory that contains `kernel32.lib`.
# Only needed when targeting MSVC on Windows.
kernel32_lib_dir=C:\Program Files (x86)\Windows Kits\10\Lib\10.0.17134.0\um\x64

# The directory that contains `crtbeginS.o` and `crtendS.o`
# Only needed when targeting Haiku.
gcc_dir=

But it seems to now be using the paths for an older Visual Studio 2015 install rather than the 2017 paths.

squeek502 avatar Jun 05 '23 18:06 squeek502

I ran out of space on Windows, so for now I can't test if it's still wrong. gonna clean up now

BratishkaErik avatar Jun 13 '23 18:06 BratishkaErik

New report:

warning(Windows10Sdk.find.path10): path_maybe_with_trailing_slash = C:\Program Files (x86)\Windows Kits\10\
warning(Windows10Sdk.find.path10): path_without_trailing_slash = C:\Program Files (x86)\Windows Kits\10
warning(Windows10Sdk.find): path = C:\Program Files (x86)\Windows Kits\10
warning(Windows10Sdk.find.version10): version_without_0 = 10.0.20348
warning(Windows10Sdk.find.version10): version_with_0 = 10.0.20348.0
warning(Windows10Sdk.find): version = 10.0.20348.0
warning(ZigWindowsSDK.find): windows10sdk is null = false
warning(ZigWindowsSDK.find): windows10sdk.path = C:\Program Files (x86)\Windows Kits\10, windows10sdk.version = 10.0.20348.0
warning(ZigWindowsSDK.find): windows81sdk is null = true
warning(MsvcLibDir.findViaRegistry): visualstudio_folder_path = C:\Users\Эрик\AppData\Local\Microsoft\VisualStudio\
warning(iterateAndFilterBySemVer): prefix to check (if any) = none
warning(iterateAndFilterBySemVer): subfolder_name (possibly with prefix) = 17.0
warning(iterateAndFilterBySemVer): subfolder_name = 17.0
warning(iterateAndFilterBySemVer): subfolder_name_normalized = 17.0.0+build.0
warning(iterateAndFilterBySemVer): subfolder_name_normalized as SemVer = 17.0.0+build.0
warning(iterateAndFilterBySemVer): previous_subfolder_name_normalized = 0.0.0+build.0
warning(iterateAndFilterBySemVer): previous_subfolder_name_normalized as SemVer = 0.0.0+build.0
warning(iterateAndFilterBySemVer): subfolder_name (possibly with prefix) = 17.0_9e9cbb98
warning(iterateAndFilterBySemVer): subfolder_name = 17.0_9e9cbb98
warning(iterateAndFilterBySemVer): subfolder_name (before replacing _ with .) = 17.0_9e9cbb98
warning(iterateAndFilterBySemVer): subfolder_name (after  replacing _ with .) = 17.0.9e9cbb98
warning(iterateAndFilterBySemVer): subfolder_name_normalized = 17.0.1+build.9e9cbb98
warning(iterateAndFilterBySemVer): subfolder_name_normalized as SemVer = 17.0.1+build.9e9cbb98
warning(iterateAndFilterBySemVer): previous_subfolder_name_normalized = 17.0.0+build.0
warning(iterateAndFilterBySemVer): previous_subfolder_name_normalized as SemVer = 17.0.0+build.0
warning(iterateAndFilterBySemVer): subfolder_name (possibly with prefix) = Packages
warning(iterateAndFilterBySemVer): subfolder_name = Packages
warning(iterateAndFilterBySemVer): subfolder_name_normalized = Packages.0.0+build.0
warning(iterateAndFilterBySemVer): subfolder_name_normalized as SemVer = error.InvalidVersion
warning(iterateAndFilterBySemVer): subfolder_name (possibly with prefix) = SettingsLogs
warning(iterateAndFilterBySemVer): subfolder_name = SettingsLogs
warning(iterateAndFilterBySemVer): subfolder_name_normalized = SettingsLogs.0.0+build.0
warning(iterateAndFilterBySemVer): subfolder_name_normalized as SemVer = error.InvalidVersion
warning(iterateAndFilterBySemVer): last_version = 17.0_9e9cbb98
warning(MsvcLibDir.findViaRegistry.vs_version): version = 17.0_9e9cbb98
warning(MsvcLibDir.findViaRegistry): vs_version = 17.0_9e9cbb98
warning(MsvcLibDir.findViaRegistry): privateregistry_absolute_path = C:\Users\Эрик\AppData\Local\Microsoft\VisualStudio\17.0_9e9cbb98\privateregistry.bin
warning(MsvcLibDir.findViaRegistry): loadFromPath successfully!
warning(MsvcLibDir.findViaRegistry): config_subkey = Software\Microsoft\VisualStudio\17.0_9e9cbb98_Config
warning(MsvcLibDir.findViaRegistry.source_directories): source_directories_value.len = 1542
warning(MsvcLibDir.findViaRegistry): source_directories = C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.35.32215\include\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.35.32215\include\cvt\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.35.32215\include\msclr\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.35.32215\include\sys\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.35.32215\crt\src\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.35.32215\crt\src\x64\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.35.32215\crt\src\arm\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.35.32215\crt\src\concrt\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.35.32215\crt\src\i386\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.35.32215\crt\src\linkopts\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.35.32215\crt\src\stl\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.35.32215\crt\src\vccorlib\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.35.32215\crt\src\vcruntime\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.35.32215\atlmfc\src\mfc\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.35.32215\atlmfc\src\atl\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.35.32215\atlmfc\include\
warning(MsvcLibDir.findViaRegistry): value of SourceDirectories in VisualStudio registry, separated:
warning(MsvcLibDir.findViaRegistry): 0: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.35.32215\include\
warning(MsvcLibDir.findViaRegistry): 1: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.35.32215\include\cvt\
warning(MsvcLibDir.findViaRegistry): 2: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.35.32215\include\msclr\
warning(MsvcLibDir.findViaRegistry): 3: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.35.32215\include\sys\
warning(MsvcLibDir.findViaRegistry): 4: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.35.32215\crt\src\
warning(MsvcLibDir.findViaRegistry): 5: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.35.32215\crt\src\x64\
warning(MsvcLibDir.findViaRegistry): 6: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.35.32215\crt\src\arm\
warning(MsvcLibDir.findViaRegistry): 7: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.35.32215\crt\src\concrt\
warning(MsvcLibDir.findViaRegistry): 8: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.35.32215\crt\src\i386\
warning(MsvcLibDir.findViaRegistry): 9: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.35.32215\crt\src\linkopts\
warning(MsvcLibDir.findViaRegistry): 10: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.35.32215\crt\src\stl\
warning(MsvcLibDir.findViaRegistry): 11: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.35.32215\crt\src\vccorlib\
warning(MsvcLibDir.findViaRegistry): 12: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.35.32215\crt\src\vcruntime\
warning(MsvcLibDir.findViaRegistry): 13: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.35.32215\atlmfc\src\mfc\
warning(MsvcLibDir.findViaRegistry): 14: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.35.32215\atlmfc\src\atl\
warning(MsvcLibDir.findViaRegistry): 15: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.35.32215\atlmfc\include\
warning(MsvcLibDir.findViaRegistry.msvc_dir): msvc_include_dir_maybe_with_trailing_slash = C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.35.32215\include\
warning(MsvcLibDir.findViaRegistry.msvc_dir): msvc_dir_with_arch = C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.35.32215\Lib\x64
warning(MsvcLibDir.find): full_path = C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.35.32215\Lib\x64
warning(ZigWindowsSDK.find): msvc_lib_dir = C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.35.32215\Lib\x64
# The directory that contains `stdlib.h`.
# On POSIX-like systems, include directories be found with: `cc -E -Wp,-v -xc /dev/null`
include_dir=C:\Program Files (x86)\Windows Kits\10\Include\10.0.20348.0\ucrt

# The system-specific include directory. May be the same as `include_dir`.
# On Windows it's the directory that includes `vcruntime.h`.
# On POSIX it's the directory that includes `sys/errno.h`.
sys_include_dir=C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.35.32215\include

# The directory that contains `crt1.o` or `crt2.o`.
# On POSIX, can be found with `cc -print-file-name=crt1.o`.
# Not needed when targeting MacOS.
crt_dir=C:\Program Files (x86)\Windows Kits\10\Lib\10.0.20348.0\ucrt\x64

# The directory that contains `vcruntime.lib`.
# Only needed when targeting MSVC on Windows.
msvc_lib_dir=C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.35.32215\Lib\x64

# The directory that contains `kernel32.lib`.
# Only needed when targeting MSVC on Windows.
kernel32_lib_dir=C:\Program Files (x86)\Windows Kits\10\Lib\10.0.20348.0\um\x64

# The directory that contains `crtbeginS.o` and `crtendS.o`
# Only needed when targeting Haiku.
gcc_dir=

Now it should choose proper version again @squeek502 :)

BratishkaErik avatar Jun 13 '23 19:06 BratishkaErik

The final printed paths match the old cpp version again for my Windows 7 install. Latest results:

Windows 10
warning(Windows10Sdk.find.path10): path_maybe_with_trailing_slash = C:\Program Files (x86)\Windows Kits\10\
warning(Windows10Sdk.find.path10): path_without_trailing_slash = C:\Program Files (x86)\Windows Kits\10
warning(Windows10Sdk.find): path = C:\Program Files (x86)\Windows Kits\10
warning(Windows10Sdk.find.version10): version_without_0 = 10.0.22621
warning(Windows10Sdk.find.version10): version_with_0 = 10.0.22621.0
warning(Windows10Sdk.find): version = 10.0.22621.0
warning(ZigWindowsSDK.find): windows10sdk is null = false
warning(ZigWindowsSDK.find): windows10sdk.path = C:\Program Files (x86)\Windows Kits\10, windows10sdk.version = 10.0.22621.0
warning(ZigWindowsSDK.find): windows81sdk is null = true
warning(MsvcLibDir.findViaRegistry): visualstudio_folder_path = C:\Users\Ryan\AppData\Local\Microsoft\VisualStudio\
warning(iterateAndFilterBySemVer): prefix to check (if any) = none
warning(iterateAndFilterBySemVer): subfolder_name (possibly with prefix) = 17.0_80a758ca
warning(iterateAndFilterBySemVer): subfolder_name = 17.0_80a758ca
warning(iterateAndFilterBySemVer): subfolder_name (before replacing _ with .) = 17.0_80a758ca
warning(iterateAndFilterBySemVer): subfolder_name (after  replacing _ with .) = 17.0.80a758ca
warning(iterateAndFilterBySemVer): subfolder_name_normalized = 17.0.1+build.80a758ca
warning(iterateAndFilterBySemVer): subfolder_name_normalized as SemVer = 17.0.1+build.80a758ca
warning(iterateAndFilterBySemVer): previous_subfolder_name_normalized = 0.0.0+build.0
warning(iterateAndFilterBySemVer): previous_subfolder_name_normalized as SemVer = 0.0.0+build.0
warning(iterateAndFilterBySemVer): subfolder_name (possibly with prefix) = BackupFiles
warning(iterateAndFilterBySemVer): subfolder_name = BackupFiles
warning(iterateAndFilterBySemVer): subfolder_name_normalized = BackupFiles.0.0+build.0
warning(iterateAndFilterBySemVer): subfolder_name_normalized as SemVer = error.InvalidVersion
warning(iterateAndFilterBySemVer): subfolder_name (possibly with prefix) = CacheService
warning(iterateAndFilterBySemVer): subfolder_name = CacheService
warning(iterateAndFilterBySemVer): subfolder_name_normalized = CacheService.0.0+build.0
warning(iterateAndFilterBySemVer): subfolder_name_normalized as SemVer = error.InvalidVersion
warning(iterateAndFilterBySemVer): subfolder_name (possibly with prefix) = Packages
warning(iterateAndFilterBySemVer): subfolder_name = Packages
warning(iterateAndFilterBySemVer): subfolder_name_normalized = Packages.0.0+build.0
warning(iterateAndFilterBySemVer): subfolder_name_normalized as SemVer = error.InvalidVersion
warning(iterateAndFilterBySemVer): subfolder_name (possibly with prefix) = RemoteSettings
warning(iterateAndFilterBySemVer): subfolder_name = RemoteSettings
warning(iterateAndFilterBySemVer): subfolder_name_normalized = RemoteSettings.0.0+build.0
warning(iterateAndFilterBySemVer): subfolder_name_normalized as SemVer = error.InvalidVersion
warning(iterateAndFilterBySemVer): subfolder_name (possibly with prefix) = Roslyn
warning(iterateAndFilterBySemVer): subfolder_name = Roslyn
warning(iterateAndFilterBySemVer): subfolder_name_normalized = Roslyn.0.0+build.0
warning(iterateAndFilterBySemVer): subfolder_name_normalized as SemVer = error.InvalidVersion
warning(iterateAndFilterBySemVer): subfolder_name (possibly with prefix) = SettingsLogs
warning(iterateAndFilterBySemVer): subfolder_name = SettingsLogs
warning(iterateAndFilterBySemVer): subfolder_name_normalized = SettingsLogs.0.0+build.0
warning(iterateAndFilterBySemVer): subfolder_name_normalized as SemVer = error.InvalidVersion
warning(iterateAndFilterBySemVer): subfolder_name (possibly with prefix) = vshub
warning(iterateAndFilterBySemVer): subfolder_name = vshub
warning(iterateAndFilterBySemVer): subfolder_name_normalized = vshub.0.0+build.0
warning(iterateAndFilterBySemVer): subfolder_name_normalized as SemVer = error.InvalidVersion
warning(iterateAndFilterBySemVer): subfolder_name (possibly with prefix) = WebView2Cache
warning(iterateAndFilterBySemVer): subfolder_name = WebView2Cache
warning(iterateAndFilterBySemVer): subfolder_name_normalized = WebView2Cache.0.0+build.0
warning(iterateAndFilterBySemVer): subfolder_name_normalized as SemVer = error.InvalidVersion
warning(iterateAndFilterBySemVer): last_version = 17.0_80a758ca
warning(MsvcLibDir.findViaRegistry.vs_version): version = 17.0_80a758ca
warning(MsvcLibDir.findViaRegistry): vs_version = 17.0_80a758ca
warning(MsvcLibDir.findViaRegistry): privateregistry_absolute_path = C:\Users\Ryan\AppData\Local\Microsoft\VisualStudio\17.0_80a758ca\privateregistry.bin
warning(MsvcLibDir.findViaRegistry): loadFromPath successfully!
warning(MsvcLibDir.findViaRegistry): config_subkey = Software\Microsoft\VisualStudio\17.0_80a758ca_Config
warning(MsvcLibDir.findViaRegistry.source_directories): source_directories_value.len = 1542
warning(MsvcLibDir.findViaRegistry): source_directories = C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\include\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\include\cvt\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\include\msclr\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\include\sys\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\crt\src\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\crt\src\x64\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\crt\src\arm\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\crt\src\concrt\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\crt\src\i386\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\crt\src\linkopts\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\crt\src\stl\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\crt\src\vccorlib\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\crt\src\vcruntime\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\src\mfc\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\src\atl\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\
warning(MsvcLibDir.findViaRegistry): value of SourceDirectories in VisualStudio registry, separated: 
warning(MsvcLibDir.findViaRegistry): 0: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\include\
warning(MsvcLibDir.findViaRegistry): 1: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\include\cvt\
warning(MsvcLibDir.findViaRegistry): 2: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\include\msclr\
warning(MsvcLibDir.findViaRegistry): 3: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\include\sys\
warning(MsvcLibDir.findViaRegistry): 4: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\crt\src\
warning(MsvcLibDir.findViaRegistry): 5: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\crt\src\x64\
warning(MsvcLibDir.findViaRegistry): 6: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\crt\src\arm\
warning(MsvcLibDir.findViaRegistry): 7: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\crt\src\concrt\
warning(MsvcLibDir.findViaRegistry): 8: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\crt\src\i386\
warning(MsvcLibDir.findViaRegistry): 9: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\crt\src\linkopts\
warning(MsvcLibDir.findViaRegistry): 10: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\crt\src\stl\
warning(MsvcLibDir.findViaRegistry): 11: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\crt\src\vccorlib\
warning(MsvcLibDir.findViaRegistry): 12: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\crt\src\vcruntime\
warning(MsvcLibDir.findViaRegistry): 13: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\src\mfc\
warning(MsvcLibDir.findViaRegistry): 14: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\src\atl\
warning(MsvcLibDir.findViaRegistry): 15: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\
warning(MsvcLibDir.findViaRegistry.msvc_dir): msvc_include_dir_maybe_with_trailing_slash = C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\include\
warning(MsvcLibDir.findViaRegistry.msvc_dir): msvc_dir_with_arch = C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\Lib\x64
warning(MsvcLibDir.find): full_path = C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\Lib\x64
warning(ZigWindowsSDK.find): msvc_lib_dir = C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\Lib\x64
# The directory that contains `stdlib.h`.
# On POSIX-like systems, include directories be found with: `cc -E -Wp,-v -xc /dev/null`
include_dir=C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt

# The system-specific include directory. May be the same as `include_dir`.
# On Windows it's the directory that includes `vcruntime.h`.
# On POSIX it's the directory that includes `sys/errno.h`.
sys_include_dir=C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\include

# The directory that contains `crt1.o` or `crt2.o`.
# On POSIX, can be found with `cc -print-file-name=crt1.o`.
# Not needed when targeting MacOS.
crt_dir=C:\Program Files (x86)\Windows Kits\10\Lib\10.0.22621.0\ucrt\x64

# The directory that contains `vcruntime.lib`.
# Only needed when targeting MSVC on Windows.
msvc_lib_dir=C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\Lib\x64

# The directory that contains `kernel32.lib`.
# Only needed when targeting MSVC on Windows.
kernel32_lib_dir=C:\Program Files (x86)\Windows Kits\10\Lib\10.0.22621.0\um\x64

# The directory that contains `crtbeginS.o` and `crtendS.o`
# Only needed when targeting Haiku.
gcc_dir=
Windows 7
warning(Windows10Sdk.find.path10): path_maybe_with_trailing_slash = C:\Program Files (x86)\Windows Kits\10\
warning(Windows10Sdk.find.path10): path_without_trailing_slash = C:\Program Files (x86)\Windows Kits\10
warning(Windows10Sdk.find): path = C:\Program Files (x86)\Windows Kits\10
warning(Windows10Sdk.find.version10): version_without_0 = 10.0.17134
warning(Windows10Sdk.find.version10): version_with_0 = 10.0.17134.0
warning(Windows10Sdk.find): version = 10.0.17134.0
warning(ZigWindowsSDK.find): windows10sdk is null = false
warning(ZigWindowsSDK.find): windows10sdk.path = C:\Program Files (x86)\Windows Kits\10, windows10sdk.version = 10.0.17134.0
warning(Windows81Sdk.find.path81): path_maybe_with_trailing_slash = C:\Program Files (x86)\Windows Kits\8.1\
warning(Windows81Sdk.find.path81): path_without_trailing_slash = C:\Program Files (x86)\Windows Kits\8.1
warning(Windows81Sdk.find): path = C:\Program Files (x86)\Windows Kits\8.1
warning(Windows81Sdk.find.version81): sdk_lib_dir_path = C:\Program Files (x86)\Windows Kits\8.1\Lib\
warning(iterateAndFilterBySemVer): prefix to check (if any) = winv
warning(iterateAndFilterBySemVer): subfolder_name (possibly with prefix) = winv6.3
warning(iterateAndFilterBySemVer): subfolder_name = 6.3
warning(iterateAndFilterBySemVer): subfolder_name_normalized = 6.3.0+build.0
warning(iterateAndFilterBySemVer): subfolder_name_normalized as SemVer = 6.3.0+build.0
warning(iterateAndFilterBySemVer): previous_subfolder_name_normalized = 0.0.0+build.0
warning(iterateAndFilterBySemVer): previous_subfolder_name_normalized as SemVer = 0.0.0+build.0
warning(iterateAndFilterBySemVer): last_version = 6.3
warning(Windows81Sdk.find.version81): version = 6.3
warning(Windows81Sdk.find): version = 6.3
warning(ZigWindowsSDK.find): windows81sdk is null = false
warning(ZigWindowsSDK.find): windows81sdk.path = C:\Program Files (x86)\Windows Kits\8.1, windows81sdk.version = 6.3
warning(MsvcLibDir.findViaRegistry): visualstudio_folder_path = C:\Users\Ryan\AppData\Local\Microsoft\VisualStudio\
warning(iterateAndFilterBySemVer): prefix to check (if any) = none
warning(iterateAndFilterBySemVer): subfolder_name (possibly with prefix) = 14.0
warning(iterateAndFilterBySemVer): subfolder_name = 14.0
warning(iterateAndFilterBySemVer): subfolder_name_normalized = 14.0.0+build.0
warning(iterateAndFilterBySemVer): subfolder_name_normalized as SemVer = 14.0.0+build.0
warning(iterateAndFilterBySemVer): previous_subfolder_name_normalized = 0.0.0+build.0
warning(iterateAndFilterBySemVer): previous_subfolder_name_normalized as SemVer = 0.0.0+build.0
warning(iterateAndFilterBySemVer): subfolder_name (possibly with prefix) = 15.0
warning(iterateAndFilterBySemVer): subfolder_name = 15.0
warning(iterateAndFilterBySemVer): subfolder_name_normalized = 15.0.0+build.0
warning(iterateAndFilterBySemVer): subfolder_name_normalized as SemVer = 15.0.0+build.0
warning(iterateAndFilterBySemVer): previous_subfolder_name_normalized = 14.0.0+build.0
warning(iterateAndFilterBySemVer): previous_subfolder_name_normalized as SemVer = 14.0.0+build.0
warning(iterateAndFilterBySemVer): subfolder_name (possibly with prefix) = 15.0_6b9e52af
warning(iterateAndFilterBySemVer): subfolder_name = 15.0_6b9e52af
warning(iterateAndFilterBySemVer): subfolder_name (before replacing _ with .) = 15.0_6b9e52af
warning(iterateAndFilterBySemVer): subfolder_name (after  replacing _ with .) = 15.0.6b9e52af
warning(iterateAndFilterBySemVer): subfolder_name_normalized = 15.0.1+build.6b9e52af
warning(iterateAndFilterBySemVer): subfolder_name_normalized as SemVer = 15.0.1+build.6b9e52af
warning(iterateAndFilterBySemVer): previous_subfolder_name_normalized = 15.0.0+build.0
warning(iterateAndFilterBySemVer): previous_subfolder_name_normalized as SemVer = 15.0.0+build.0
warning(iterateAndFilterBySemVer): subfolder_name (possibly with prefix) = Packages
warning(iterateAndFilterBySemVer): subfolder_name = Packages
warning(iterateAndFilterBySemVer): subfolder_name_normalized = Packages.0.0+build.0
warning(iterateAndFilterBySemVer): subfolder_name_normalized as SemVer = error.InvalidVersion
warning(iterateAndFilterBySemVer): subfolder_name (possibly with prefix) = SettingsLogs
warning(iterateAndFilterBySemVer): subfolder_name = SettingsLogs
warning(iterateAndFilterBySemVer): subfolder_name_normalized = SettingsLogs.0.0+build.0
warning(iterateAndFilterBySemVer): subfolder_name_normalized as SemVer = error.InvalidVersion
warning(iterateAndFilterBySemVer): subfolder_name (possibly with prefix) = vshub
warning(iterateAndFilterBySemVer): subfolder_name = vshub
warning(iterateAndFilterBySemVer): subfolder_name_normalized = vshub.0.0+build.0
warning(iterateAndFilterBySemVer): subfolder_name_normalized as SemVer = error.InvalidVersion
warning(iterateAndFilterBySemVer): last_version = 15.0_6b9e52af
warning(MsvcLibDir.findViaRegistry.vs_version): version = 15.0_6b9e52af
warning(MsvcLibDir.findViaRegistry): vs_version = 15.0_6b9e52af
warning(MsvcLibDir.findViaRegistry): privateregistry_absolute_path = C:\Users\Ryan\AppData\Local\Microsoft\VisualStudio\15.0_6b9e52af\privateregistry.bin
warning(MsvcLibDir.findViaRegistry): loadFromPath successfully!
warning(MsvcLibDir.findViaRegistry): config_subkey = Software\Microsoft\VisualStudio\15.0_6b9e52af_Config
warning(MsvcLibDir.findViaRegistry.source_directories): source_directories_value.len = 1739
warning(MsvcLibDir.findViaRegistry): source_directories = C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.15.26726\include\;C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.15.26726\include\cvt\;C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.15.26726\include\msclr\;C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.15.26726\include\sys\;C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.15.26726\include\thr\;C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.15.26726\crt\src\;C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.15.26726\crt\src\x64\;C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.15.26726\crt\src\arm\;C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.15.26726\crt\src\concrt\;C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.15.26726\crt\src\i386\;C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.15.26726\crt\src\linkopts\;C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.15.26726\crt\src\stl\;C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.15.26726\crt\src\vccorlib\;C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.15.26726\crt\src\vcruntime\;C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.15.26726\atlmfc\src\mfc\;C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.15.26726\atlmfc\src\atl\;C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.15.26726\atlmfc\include\
warning(MsvcLibDir.findViaRegistry): value of SourceDirectories in VisualStudio registry, separated: 
warning(MsvcLibDir.findViaRegistry): 0: C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.15.26726\include\
warning(MsvcLibDir.findViaRegistry): 1: C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.15.26726\include\cvt\
warning(MsvcLibDir.findViaRegistry): 2: C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.15.26726\include\msclr\
warning(MsvcLibDir.findViaRegistry): 3: C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.15.26726\include\sys\
warning(MsvcLibDir.findViaRegistry): 4: C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.15.26726\include\thr\
warning(MsvcLibDir.findViaRegistry): 5: C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.15.26726\crt\src\
warning(MsvcLibDir.findViaRegistry): 6: C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.15.26726\crt\src\x64\
warning(MsvcLibDir.findViaRegistry): 7: C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.15.26726\crt\src\arm\
warning(MsvcLibDir.findViaRegistry): 8: C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.15.26726\crt\src\concrt\
warning(MsvcLibDir.findViaRegistry): 9: C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.15.26726\crt\src\i386\
warning(MsvcLibDir.findViaRegistry): 10: C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.15.26726\crt\src\linkopts\
warning(MsvcLibDir.findViaRegistry): 11: C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.15.26726\crt\src\stl\
warning(MsvcLibDir.findViaRegistry): 12: C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.15.26726\crt\src\vccorlib\
warning(MsvcLibDir.findViaRegistry): 13: C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.15.26726\crt\src\vcruntime\
warning(MsvcLibDir.findViaRegistry): 14: C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.15.26726\atlmfc\src\mfc\
warning(MsvcLibDir.findViaRegistry): 15: C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.15.26726\atlmfc\src\atl\
warning(MsvcLibDir.findViaRegistry): 16: C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.15.26726\atlmfc\include\
warning(MsvcLibDir.findViaRegistry.msvc_dir): msvc_include_dir_maybe_with_trailing_slash = C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.15.26726\include\
warning(MsvcLibDir.findViaRegistry.msvc_dir): msvc_dir_with_arch = C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.15.26726\Lib\x64
warning(MsvcLibDir.find): full_path = C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.15.26726\Lib\x64
warning(ZigWindowsSDK.find): msvc_lib_dir = C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.15.26726\Lib\x64
# The directory that contains `stdlib.h`.
# On POSIX-like systems, include directories be found with: `cc -E -Wp,-v -xc /dev/null`
include_dir=C:\Program Files (x86)\Windows Kits\10\Include\10.0.17134.0\ucrt

# The system-specific include directory. May be the same as `include_dir`.
# On Windows it's the directory that includes `vcruntime.h`.
# On POSIX it's the directory that includes `sys/errno.h`.
sys_include_dir=C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.15.26726\include

# The directory that contains `crt1.o` or `crt2.o`.
# On POSIX, can be found with `cc -print-file-name=crt1.o`.
# Not needed when targeting MacOS.
crt_dir=C:\Program Files (x86)\Windows Kits\10\Lib\10.0.17134.0\ucrt\x64

# The directory that contains `vcruntime.lib`.
# Only needed when targeting MSVC on Windows.
msvc_lib_dir=C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.15.26726\Lib\x64

# The directory that contains `kernel32.lib`.
# Only needed when targeting MSVC on Windows.
kernel32_lib_dir=C:\Program Files (x86)\Windows Kits\10\Lib\10.0.17134.0\um\x64

# The directory that contains `crtbeginS.o` and `crtendS.o`
# Only needed when targeting Haiku.
gcc_dir=

EDIT: And here's a libc_only.exe build if anyone wants to try it on their system:

libc_only-20230613.zip

squeek502 avatar Jun 14 '23 02:06 squeek502

Here's the result on my work laptop with Windows 11 and Visuall Studio 2022 installed.

warning(Windows10Sdk.find.path10): path_maybe_with_trailing_slash = C:\Program Files (x86)\Windows Kits\10\
warning(Windows10Sdk.find.path10): path_without_trailing_slash = C:\Program Files (x86)\Windows Kits\10
warning(Windows10Sdk.find): path = C:\Program Files (x86)\Windows Kits\10
warning(Windows10Sdk.find.version10): version_without_0 = 10.0.22000
warning(Windows10Sdk.find.version10): version_with_0 = 10.0.22000.0
warning(Windows10Sdk.find): version = 10.0.22000.0
warning(ZigWindowsSDK.find): windows10sdk is null = false
warning(ZigWindowsSDK.find): windows10sdk.path = C:\Program Files (x86)\Windows Kits\10, windows10sdk.version = 10.0.22000.0
warning(ZigWindowsSDK.find): windows81sdk is null = true
warning(MsvcLibDir.findViaRegistry): visualstudio_folder_path = C:\Users\micha\AppData\Local\Microsoft\VisualStudio\
warning(iterateAndFilterBySemVer): prefix to check (if any) = none
warning(iterateAndFilterBySemVer): subfolder_name (possibly with prefix) = 17.0_281a9261
warning(iterateAndFilterBySemVer): subfolder_name = 17.0_281a9261
warning(iterateAndFilterBySemVer): subfolder_name (before replacing _ with .) = 17.0_281a9261
warning(iterateAndFilterBySemVer): subfolder_name (after  replacing _ with .) = 17.0.281a9261
warning(iterateAndFilterBySemVer): subfolder_name_normalized = 17.0.1+build.281a9261
warning(iterateAndFilterBySemVer): subfolder_name_normalized as SemVer = 17.0.1+build.281a9261
warning(iterateAndFilterBySemVer): previous_subfolder_name_normalized = 0.0.0+build.0
warning(iterateAndFilterBySemVer): previous_subfolder_name_normalized as SemVer = 0.0.0+build.0
warning(iterateAndFilterBySemVer): subfolder_name (possibly with prefix) = BackupFiles
warning(iterateAndFilterBySemVer): subfolder_name = BackupFiles
warning(iterateAndFilterBySemVer): subfolder_name_normalized = BackupFiles.0.0+build.0
warning(iterateAndFilterBySemVer): subfolder_name_normalized as SemVer = error.InvalidVersion
warning(iterateAndFilterBySemVer): subfolder_name (possibly with prefix) = CacheService
warning(iterateAndFilterBySemVer): subfolder_name = CacheService
warning(iterateAndFilterBySemVer): subfolder_name_normalized = CacheService.0.0+build.0
warning(iterateAndFilterBySemVer): subfolder_name_normalized as SemVer = error.InvalidVersion
warning(iterateAndFilterBySemVer): subfolder_name (possibly with prefix) = Packages
warning(iterateAndFilterBySemVer): subfolder_name = Packages
warning(iterateAndFilterBySemVer): subfolder_name_normalized = Packages.0.0+build.0
warning(iterateAndFilterBySemVer): subfolder_name_normalized as SemVer = error.InvalidVersion
warning(iterateAndFilterBySemVer): subfolder_name (possibly with prefix) = SettingsLogs
warning(iterateAndFilterBySemVer): subfolder_name = SettingsLogs
warning(iterateAndFilterBySemVer): subfolder_name_normalized = SettingsLogs.0.0+build.0
warning(iterateAndFilterBySemVer): subfolder_name_normalized as SemVer = error.InvalidVersion
warning(iterateAndFilterBySemVer): subfolder_name (possibly with prefix) = vshub
warning(iterateAndFilterBySemVer): subfolder_name = vshub
warning(iterateAndFilterBySemVer): subfolder_name_normalized = vshub.0.0+build.0
warning(iterateAndFilterBySemVer): subfolder_name_normalized as SemVer = error.InvalidVersion
warning(iterateAndFilterBySemVer): subfolder_name (possibly with prefix) = WebView2Cache
warning(iterateAndFilterBySemVer): subfolder_name = WebView2Cache
warning(iterateAndFilterBySemVer): subfolder_name_normalized = WebView2Cache.0.0+build.0
warning(iterateAndFilterBySemVer): subfolder_name_normalized as SemVer = error.InvalidVersion
warning(iterateAndFilterBySemVer): last_version = 17.0_281a9261
warning(MsvcLibDir.findViaRegistry.vs_version): version = 17.0_281a9261
warning(MsvcLibDir.findViaRegistry): vs_version = 17.0_281a9261
warning(MsvcLibDir.findViaRegistry): privateregistry_absolute_path = C:\Users\micha\AppData\Local\Microsoft\VisualStudio\17.0_281a9261\privateregistry.bin
warning(MsvcLibDir.findViaRegistry): loadFromPath successfully!
warning(MsvcLibDir.findViaRegistry): config_subkey = Software\Microsoft\VisualStudio\17.0_281a9261_Config
warning(MsvcLibDir.findViaRegistry.source_directories): source_directories_value.len = 1542
warning(MsvcLibDir.findViaRegistry): source_directories = C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.36.32532\include\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.36.32532\include\cvt\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.36.32532\include\msclr\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.36.32532\include\sys\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.36.32532\crt\src\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.36.32532\crt\src\x64\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.36.32532\crt\src\arm\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.36.32532\crt\src\concrt\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.36.32532\crt\src\i386\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.36.32532\crt\src\linkopts\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.36.32532\crt\src\stl\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.36.32532\crt\src\vccorlib\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.36.32532\crt\src\vcruntime\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.36.32532\atlmfc\src\mfc\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.36.32532\atlmfc\src\atl\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.36.32532\atlmfc\include\
warning(MsvcLibDir.findViaRegistry): value of SourceDirectories in VisualStudio registry, separated:
warning(MsvcLibDir.findViaRegistry): 0: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.36.32532\include\
warning(MsvcLibDir.findViaRegistry): 1: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.36.32532\include\cvt\
warning(MsvcLibDir.findViaRegistry): 2: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.36.32532\include\msclr\
warning(MsvcLibDir.findViaRegistry): 3: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.36.32532\include\sys\
warning(MsvcLibDir.findViaRegistry): 4: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.36.32532\crt\src\
warning(MsvcLibDir.findViaRegistry): 5: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.36.32532\crt\src\x64\
warning(MsvcLibDir.findViaRegistry): 6: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.36.32532\crt\src\arm\
warning(MsvcLibDir.findViaRegistry): 7: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.36.32532\crt\src\concrt\
warning(MsvcLibDir.findViaRegistry): 8: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.36.32532\crt\src\i386\
warning(MsvcLibDir.findViaRegistry): 9: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.36.32532\crt\src\linkopts\
warning(MsvcLibDir.findViaRegistry): 10: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.36.32532\crt\src\stl\
warning(MsvcLibDir.findViaRegistry): 11: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.36.32532\crt\src\vccorlib\
warning(MsvcLibDir.findViaRegistry): 12: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.36.32532\crt\src\vcruntime\
warning(MsvcLibDir.findViaRegistry): 13: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.36.32532\atlmfc\src\mfc\
warning(MsvcLibDir.findViaRegistry): 14: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.36.32532\atlmfc\src\atl\
warning(MsvcLibDir.findViaRegistry): 15: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.36.32532\atlmfc\include\
warning(MsvcLibDir.findViaRegistry.msvc_dir): msvc_include_dir_maybe_with_trailing_slash = C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.36.32532\include\
warning(MsvcLibDir.findViaRegistry.msvc_dir): msvc_dir_with_arch = C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.36.32532\Lib\x64
warning(MsvcLibDir.find): full_path = C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.36.32532\Lib\x64
warning(ZigWindowsSDK.find): msvc_lib_dir = C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.36.32532\Lib\x64
# The directory that contains `stdlib.h`.
# On POSIX-like systems, include directories be found with: `cc -E -Wp,-v -xc /dev/null`
include_dir=C:\Program Files (x86)\Windows Kits\10\Include\10.0.22000.0\ucrt

# The system-specific include directory. May be the same as `include_dir`.
# On Windows it's the directory that includes `vcruntime.h`.
# On POSIX it's the directory that includes `sys/errno.h`.
sys_include_dir=C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.36.32532\include

# The directory that contains `crt1.o` or `crt2.o`.
# On POSIX, can be found with `cc -print-file-name=crt1.o`.
# Not needed when targeting MacOS.
crt_dir=C:\Program Files (x86)\Windows Kits\10\Lib\10.0.22000.0\ucrt\x64

# The directory that contains `vcruntime.lib`.
# Only needed when targeting MSVC on Windows.
msvc_lib_dir=C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.36.32532\Lib\x64

# The directory that contains `kernel32.lib`.
# Only needed when targeting MSVC on Windows.
kernel32_lib_dir=C:\Program Files (x86)\Windows Kits\10\Lib\10.0.22000.0\um\x64

# The directory that contains `crtbeginS.o` and `crtendS.o`
# Only needed when targeting Haiku.
gcc_dir=

mlarouche avatar Jun 14 '23 13:06 mlarouche

Not sure what should I get. But here is my output. PC with windows 11 but install multiple Visual studio version. VS 2017 build tools VS 2019 community + build tools VS 2022 community The VS 2022 MSVC folder doesn't have the crt folder as VS 2019. this cause the libcstdhdr not found?

 Directory of C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.36.32532

06/03/2023  12:50 PM    <DIR>          .
06/03/2023  12:48 PM    <DIR>          ..
06/03/2023  12:50 PM    <DIR>          Auxiliary
06/03/2023  12:50 PM    <DIR>          bin
06/03/2023  12:50 PM    <DIR>          include
06/03/2023  12:50 PM    <DIR>          lib
06/03/2023  12:48 PM    <DIR>          modules
               0 File(s)              0 bytes
               7 Dir(s)  128,883,449,856 bytes free
warning(Windows10Sdk.find.path10): path_maybe_with_trailing_slash = C:\Program Files (x86)\Windows Kits\10\
warning(Windows10Sdk.find.path10): path_without_trailing_slash = C:\Program Files (x86)\Windows Kits\10
warning(Windows10Sdk.find): path = C:\Program Files (x86)\Windows Kits\10
warning(Windows10Sdk.find.version10): version_without_0 = 10.0.22000
warning(Windows10Sdk.find.version10): version_with_0 = 10.0.22000.0
warning(Windows10Sdk.find): version = 10.0.22000.0
warning(ZigWindowsSDK.find): windows10sdk is null = false
warning(ZigWindowsSDK.find): windows10sdk.path = C:\Program Files (x86)\Windows Kits\10, windows10sdk.version = 10.0.22000.0
warning(ZigWindowsSDK.find): windows81sdk is null = true
warning(MsvcLibDir.findViaRegistry): visualstudio_folder_path = C:\Users\sgwon\AppData\Local\Microsoft\VisualStudio\
warning(iterateAndFilterBySemVer): prefix to check (if any) = none
warning(iterateAndFilterBySemVer): subfolder_name (possibly with prefix) = 16.0
warning(iterateAndFilterBySemVer): subfolder_name = 16.0
warning(iterateAndFilterBySemVer): subfolder_name_normalized = 16.0.0+build.0
warning(iterateAndFilterBySemVer): subfolder_name_normalized as SemVer = 16.0.0+build.0
warning(iterateAndFilterBySemVer): previous_subfolder_name_normalized = 0.0.0+build.0
warning(iterateAndFilterBySemVer): previous_subfolder_name_normalized as SemVer = 0.0.0+build.0
warning(iterateAndFilterBySemVer): subfolder_name (possibly with prefix) = 16.0_67f2a8e9
warning(iterateAndFilterBySemVer): subfolder_name = 16.0_67f2a8e9
warning(iterateAndFilterBySemVer): subfolder_name (before replacing _ with .) = 16.0_67f2a8e9
warning(iterateAndFilterBySemVer): subfolder_name (after  replacing _ with .) = 16.0.67f2a8e9
warning(iterateAndFilterBySemVer): subfolder_name_normalized = 16.0.1+build.67f2a8e9
warning(iterateAndFilterBySemVer): subfolder_name_normalized as SemVer = 16.0.1+build.67f2a8e9
warning(iterateAndFilterBySemVer): previous_subfolder_name_normalized = 16.0.0+build.0
warning(iterateAndFilterBySemVer): previous_subfolder_name_normalized as SemVer = 16.0.0+build.0
warning(iterateAndFilterBySemVer): subfolder_name (possibly with prefix) = 17.0_f84b1006
warning(iterateAndFilterBySemVer): subfolder_name = 17.0_f84b1006
warning(iterateAndFilterBySemVer): subfolder_name (before replacing _ with .) = 17.0_f84b1006
warning(iterateAndFilterBySemVer): subfolder_name (after  replacing _ with .) = 17.0.f84b1006
warning(iterateAndFilterBySemVer): subfolder_name_normalized = 17.0.1+build.f84b1006
warning(iterateAndFilterBySemVer): subfolder_name_normalized as SemVer = 17.0.1+build.f84b1006
warning(iterateAndFilterBySemVer): previous_subfolder_name_normalized = 16.0.1+build.67f2a8e9
warning(iterateAndFilterBySemVer): previous_subfolder_name_normalized as SemVer = 16.0.1+build.67f2a8e9
warning(iterateAndFilterBySemVer): subfolder_name (possibly with prefix) = BackupFiles
warning(iterateAndFilterBySemVer): subfolder_name = BackupFiles
warning(iterateAndFilterBySemVer): subfolder_name_normalized = BackupFiles.0.0+build.0
warning(iterateAndFilterBySemVer): subfolder_name_normalized as SemVer = error.InvalidVersion
warning(iterateAndFilterBySemVer): subfolder_name (possibly with prefix) = CacheService
warning(iterateAndFilterBySemVer): subfolder_name = CacheService
warning(iterateAndFilterBySemVer): subfolder_name_normalized = CacheService.0.0+build.0
warning(iterateAndFilterBySemVer): subfolder_name_normalized as SemVer = error.InvalidVersion
warning(iterateAndFilterBySemVer): subfolder_name (possibly with prefix) = NestingProfiles
warning(iterateAndFilterBySemVer): subfolder_name = NestingProfiles
warning(iterateAndFilterBySemVer): subfolder_name_normalized = NestingProfiles.0.0+build.0
warning(iterateAndFilterBySemVer): subfolder_name_normalized as SemVer = error.InvalidVersion
warning(iterateAndFilterBySemVer): subfolder_name (possibly with prefix) = Packages
warning(iterateAndFilterBySemVer): subfolder_name = Packages
warning(iterateAndFilterBySemVer): subfolder_name_normalized = Packages.0.0+build.0
warning(iterateAndFilterBySemVer): subfolder_name_normalized as SemVer = error.InvalidVersion
warning(iterateAndFilterBySemVer): subfolder_name (possibly with prefix) = RemoteSettings
warning(iterateAndFilterBySemVer): subfolder_name = RemoteSettings
warning(iterateAndFilterBySemVer): subfolder_name_normalized = RemoteSettings.0.0+build.0
warning(iterateAndFilterBySemVer): subfolder_name_normalized as SemVer = error.InvalidVersion
warning(iterateAndFilterBySemVer): subfolder_name (possibly with prefix) = Roslyn
warning(iterateAndFilterBySemVer): subfolder_name = Roslyn
warning(iterateAndFilterBySemVer): subfolder_name_normalized = Roslyn.0.0+build.0
warning(iterateAndFilterBySemVer): subfolder_name_normalized as SemVer = error.InvalidVersion
warning(iterateAndFilterBySemVer): subfolder_name (possibly with prefix) = SettingsLogs
warning(iterateAndFilterBySemVer): subfolder_name = SettingsLogs
warning(iterateAndFilterBySemVer): subfolder_name_normalized = SettingsLogs.0.0+build.0
warning(iterateAndFilterBySemVer): subfolder_name_normalized as SemVer = error.InvalidVersion
warning(iterateAndFilterBySemVer): subfolder_name (possibly with prefix) = vshub
warning(iterateAndFilterBySemVer): subfolder_name = vshub
warning(iterateAndFilterBySemVer): subfolder_name_normalized = vshub.0.0+build.0
warning(iterateAndFilterBySemVer): subfolder_name_normalized as SemVer = error.InvalidVersion
warning(iterateAndFilterBySemVer): subfolder_name (possibly with prefix) = WebView2Cache
warning(iterateAndFilterBySemVer): subfolder_name = WebView2Cache
warning(iterateAndFilterBySemVer): subfolder_name_normalized = WebView2Cache.0.0+build.0
warning(iterateAndFilterBySemVer): subfolder_name_normalized as SemVer = error.InvalidVersion
warning(iterateAndFilterBySemVer): last_version = 17.0_f84b1006
warning(MsvcLibDir.findViaRegistry.vs_version): version = 17.0_f84b1006
warning(MsvcLibDir.findViaRegistry): vs_version = 17.0_f84b1006
warning(MsvcLibDir.findViaRegistry): privateregistry_absolute_path = C:\Users\sgwon\AppData\Local\Microsoft\VisualStudio\17.0_f84b1006\privateregistry.bin
warning(MsvcLibDir.findViaRegistry): loadFromPath successfully!
warning(MsvcLibDir.findViaRegistry): config_subkey = Software\Microsoft\VisualStudio\17.0_f84b1006_Config
warning(ZigWindowsSDK.find): msvc_lib_dir = null
error: unable to detect native libc: LibCStdLibHeaderNotFound

sgwong avatar Jun 15 '23 14:06 sgwong

The VS 2022 MSVC folder doesn't have the crt folder as VS 2019. this cause the libcstdhdr not found?

Seems like it. Would you like to try on master-branch build too?

BratishkaErik avatar Jun 15 '23 14:06 BratishkaErik

you mean with run with zig master? I tried run with some latest prebuild zig version with following output

C:\Users\sgwon>zig version
0.11.0-dev.3395+1e7dcaa3a

C:\Users\sgwon>zig libc
# The directory that contains `stdlib.h`.
# On POSIX-like systems, include directories be found with: `cc -E -Wp,-v -xc /dev/null`
include_dir=C:\Program Files (x86)\Windows Kits\10\Include\10.0.22000.0\ucrt

# The system-specific include directory. May be the same as `include_dir`.
# On Windows it's the directory that includes `vcruntime.h`.
# On POSIX it's the directory that includes `sys/errno.h`.
sys_include_dir=C:\Program Files (x86)\Microsoft Visual Studio\2019\BuildTools\VC\Tools\MSVC\14.29.30037\include

# The directory that contains `crt1.o` or `crt2.o`.
# On POSIX, can be found with `cc -print-file-name=crt1.o`.
# Not needed when targeting MacOS.
crt_dir=C:\Program Files (x86)\Windows Kits\10\Lib\10.0.22000.0\ucrt\x64

# The directory that contains `vcruntime.lib`.
# Only needed when targeting MSVC on Windows.
msvc_lib_dir=C:\Program Files (x86)\Microsoft Visual Studio\2019\BuildTools\VC\Tools\MSVC\14.29.30037\lib\x64\

# The directory that contains `kernel32.lib`.
# Only needed when targeting MSVC on Windows.
kernel32_lib_dir=C:\Program Files (x86)\Windows Kits\10\Lib\10.0.22000.0\um\x64

# The directory that contains `crtbeginS.o` and `crtendS.o`
# Only needed when targeting Haiku.
gcc_dir=

sgwong avatar Jun 15 '23 15:06 sgwong

hm, I think from now on I'll save all suitable folder names, sort them and traverse on sorted list (from „newest” to „oldest”), (re-)trying same privateregistry.bin logic. Does that sound right?

BratishkaErik avatar Jun 15 '23 15:06 BratishkaErik

ok, that should solve my issue.

sgwong avatar Jun 15 '23 15:06 sgwong

I'm not sure if it is fixed, I just copy-pasted folders since I don't have enough space for other versions to install on Windows partition:

warning(Windows10Sdk.find.path10): path_maybe_with_trailing_slash = C:\Program Files (x86)\Windows Kits\10\
warning(Windows10Sdk.find.path10): path_without_trailing_slash = C:\Program Files (x86)\Windows Kits\10
warning(Windows10Sdk.find): path = C:\Program Files (x86)\Windows Kits\10
warning(Windows10Sdk.find.version10): version_without_0 = 10.0.20348
warning(Windows10Sdk.find.version10): version_with_0 = 10.0.20348.0
warning(Windows10Sdk.find): version = 10.0.20348.0
warning(ZigWindowsSDK.find): windows10sdk is null = false
warning(ZigWindowsSDK.find): windows10sdk.path = C:\Program Files (x86)\Windows Kits\10, windows10sdk.version = 10.0.20348.0
warning(ZigWindowsSDK.find): windows81sdk is null = true
warning(MsvcLibDir.findViaRegistry): visualstudio_folder_path = C:\Users\Эрик\AppData\Local\Microsoft\VisualStudio\
warning(iterateAndFilterBySemVer): prefix to check (if any) = none
warning(iterateAndFilterBySemVer): subfolder_name (possibly with prefix) = 16.1
warning(iterateAndFilterBySemVer): subfolder_name = 16.1
warning(iterateAndFilterBySemVer): subfolder_name_normalized = 16.1.0+build.0
warning(iterateAndFilterBySemVer): subfolder_name_normalized as SemVer = 16.1.0+build.0
warning(iterateAndFilterBySemVer): subfolder_name passed check
warning(iterateAndFilterBySemVer): subfolder_name (possibly with prefix) = 17.0
warning(iterateAndFilterBySemVer): subfolder_name = 17.0
warning(iterateAndFilterBySemVer): subfolder_name_normalized = 17.0.0+build.0
warning(iterateAndFilterBySemVer): subfolder_name_normalized as SemVer = 17.0.0+build.0
warning(iterateAndFilterBySemVer): subfolder_name passed check
warning(iterateAndFilterBySemVer): subfolder_name (possibly with prefix) = 17.0_9e9cbb98
warning(iterateAndFilterBySemVer): subfolder_name = 17.0_9e9cbb98
warning(iterateAndFilterBySemVer): subfolder_name_tmp_copy (before replacing _ with .) = 17.0_9e9cbb98
warning(iterateAndFilterBySemVer): subfolder_name_tmp_copy (after  replacing _ with .) = 17.0.9e9cbb98
warning(iterateAndFilterBySemVer): subfolder_name_normalized = 17.0.1+build.9e9cbb98
warning(iterateAndFilterBySemVer): subfolder_name_normalized as SemVer = 17.0.1+build.9e9cbb98
warning(iterateAndFilterBySemVer): subfolder_name passed check
warning(iterateAndFilterBySemVer): subfolder_name (possibly with prefix) = 17.0_9e9cbb99
warning(iterateAndFilterBySemVer): subfolder_name = 17.0_9e9cbb99
warning(iterateAndFilterBySemVer): subfolder_name_tmp_copy (before replacing _ with .) = 17.0_9e9cbb99
warning(iterateAndFilterBySemVer): subfolder_name_tmp_copy (after  replacing _ with .) = 17.0.9e9cbb99
warning(iterateAndFilterBySemVer): subfolder_name_normalized = 17.0.1+build.9e9cbb99
warning(iterateAndFilterBySemVer): subfolder_name_normalized as SemVer = 17.0.1+build.9e9cbb99
warning(iterateAndFilterBySemVer): subfolder_name passed check
warning(iterateAndFilterBySemVer): subfolder_name (possibly with prefix) = 17.1
warning(iterateAndFilterBySemVer): subfolder_name = 17.1
warning(iterateAndFilterBySemVer): subfolder_name_normalized = 17.1.0+build.0
warning(iterateAndFilterBySemVer): subfolder_name_normalized as SemVer = 17.1.0+build.0
warning(iterateAndFilterBySemVer): subfolder_name passed check
warning(iterateAndFilterBySemVer): subfolder_name (possibly with prefix) = 17.2
warning(iterateAndFilterBySemVer): subfolder_name = 17.2
warning(iterateAndFilterBySemVer): subfolder_name_normalized = 17.2.0+build.0
warning(iterateAndFilterBySemVer): subfolder_name_normalized as SemVer = 17.2.0+build.0
warning(iterateAndFilterBySemVer): subfolder_name passed check
warning(iterateAndFilterBySemVer): subfolder_name (possibly with prefix) = Packages
warning(iterateAndFilterBySemVer): subfolder_name = Packages
warning(iterateAndFilterBySemVer): subfolder_name_normalized = Packages.0.0+build.0
warning(iterateAndFilterBySemVer): subfolder_name_normalized as SemVer = error.InvalidVersion
warning(iterateAndFilterBySemVer): subfolder_name (possibly with prefix) = SettingsLogs
warning(iterateAndFilterBySemVer): subfolder_name = SettingsLogs
warning(iterateAndFilterBySemVer): subfolder_name_normalized = SettingsLogs.0.0+build.0
warning(iterateAndFilterBySemVer): subfolder_name_normalized as SemVer = error.InvalidVersion
warning(iterateAndFilterBySemVer): Before sorting:
warning(iterateAndFilterBySemVer): Filtered dir 0 = 16.1
warning(iterateAndFilterBySemVer): Filtered dir 1 = 17.0
warning(iterateAndFilterBySemVer): Filtered dir 2 = 17.0_9e9cbb98
warning(iterateAndFilterBySemVer): Filtered dir 3 = 17.0_9e9cbb99
warning(iterateAndFilterBySemVer): Filtered dir 4 = 17.1
warning(iterateAndFilterBySemVer): Filtered dir 5 = 17.2
warning(iterateAndFilterBySemVer): After sorting:
warning(iterateAndFilterBySemVer): Filtered dir 0 = 17.2
warning(iterateAndFilterBySemVer): Filtered dir 1 = 17.1
warning(iterateAndFilterBySemVer): Filtered dir 2 = 17.0_9e9cbb99
warning(iterateAndFilterBySemVer): Filtered dir 3 = 17.0_9e9cbb98
warning(iterateAndFilterBySemVer): Filtered dir 4 = 17.0
warning(iterateAndFilterBySemVer): Filtered dir 5 = 16.1
warning(MsvcLibDir.findViaRegistry.source_directories): vs_version = 17.2
warning(MsvcLibDir.findViaRegistry.source_directories): privateregistry_absolute_path = C:\Users\Эрик\AppData\Local\Microsoft\VisualStudio\17.2\privateregistry.bin
warning(MsvcLibDir.findViaRegistry.source_directories): loadFromPath successfully!
warning(MsvcLibDir.findViaRegistry.source_directories): config_subkey = Software\Microsoft\VisualStudio\17.2_Config
warning(MsvcLibDir.findViaRegistry.source_directories): vs_version = 17.1
warning(MsvcLibDir.findViaRegistry.source_directories): privateregistry_absolute_path = C:\Users\Эрик\AppData\Local\Microsoft\VisualStudio\17.1\privateregistry.bin
warning(MsvcLibDir.findViaRegistry.source_directories): loadFromPath successfully!
warning(MsvcLibDir.findViaRegistry.source_directories): config_subkey = Software\Microsoft\VisualStudio\17.1_Config
warning(MsvcLibDir.findViaRegistry.source_directories): vs_version = 17.0_9e9cbb99
warning(MsvcLibDir.findViaRegistry.source_directories): privateregistry_absolute_path = C:\Users\Эрик\AppData\Local\Microsoft\VisualStudio\17.0_9e9cbb99\privateregistry.bin
warning(MsvcLibDir.findViaRegistry.source_directories): loadFromPath successfully!
warning(MsvcLibDir.findViaRegistry.source_directories): config_subkey = Software\Microsoft\VisualStudio\17.0_9e9cbb99_Config
warning(MsvcLibDir.findViaRegistry.source_directories): vs_version = 17.0_9e9cbb98
warning(MsvcLibDir.findViaRegistry.source_directories): privateregistry_absolute_path = C:\Users\Эрик\AppData\Local\Microsoft\VisualStudio\17.0_9e9cbb98\privateregistry.bin
warning(MsvcLibDir.findViaRegistry.source_directories): loadFromPath successfully!
warning(MsvcLibDir.findViaRegistry.source_directories): config_subkey = Software\Microsoft\VisualStudio\17.0_9e9cbb98_Config
warning(MsvcLibDir.findViaRegistry.source_directories): Source Directories succesfully read, len = 1542
warning(MsvcLibDir.findViaRegistry): source_directories = C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.35.32215\include\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.35.32215\include\cvt\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.35.32215\include\msclr\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.35.32215\include\sys\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.35.32215\crt\src\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.35.32215\crt\src\x64\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.35.32215\crt\src\arm\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.35.32215\crt\src\concrt\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.35.32215\crt\src\i386\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.35.32215\crt\src\linkopts\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.35.32215\crt\src\stl\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.35.32215\crt\src\vccorlib\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.35.32215\crt\src\vcruntime\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.35.32215\atlmfc\src\mfc\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.35.32215\atlmfc\src\atl\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.35.32215\atlmfc\include\
warning(MsvcLibDir.findViaRegistry): value of SourceDirectories in VisualStudio registry, separated:
warning(MsvcLibDir.findViaRegistry): 0: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.35.32215\include\
warning(MsvcLibDir.findViaRegistry): 1: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.35.32215\include\cvt\
warning(MsvcLibDir.findViaRegistry): 2: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.35.32215\include\msclr\
warning(MsvcLibDir.findViaRegistry): 3: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.35.32215\include\sys\
warning(MsvcLibDir.findViaRegistry): 4: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.35.32215\crt\src\
warning(MsvcLibDir.findViaRegistry): 5: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.35.32215\crt\src\x64\
warning(MsvcLibDir.findViaRegistry): 6: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.35.32215\crt\src\arm\
warning(MsvcLibDir.findViaRegistry): 7: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.35.32215\crt\src\concrt\
warning(MsvcLibDir.findViaRegistry): 8: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.35.32215\crt\src\i386\
warning(MsvcLibDir.findViaRegistry): 9: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.35.32215\crt\src\linkopts\
warning(MsvcLibDir.findViaRegistry): 10: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.35.32215\crt\src\stl\
warning(MsvcLibDir.findViaRegistry): 11: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.35.32215\crt\src\vccorlib\
warning(MsvcLibDir.findViaRegistry): 12: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.35.32215\crt\src\vcruntime\
warning(MsvcLibDir.findViaRegistry): 13: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.35.32215\atlmfc\src\mfc\
warning(MsvcLibDir.findViaRegistry): 14: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.35.32215\atlmfc\src\atl\
warning(MsvcLibDir.findViaRegistry): 15: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.35.32215\atlmfc\include\
warning(MsvcLibDir.findViaRegistry.msvc_dir): msvc_include_dir_maybe_with_trailing_slash = C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.35.32215\include\
warning(MsvcLibDir.findViaRegistry.msvc_dir): msvc_dir_with_arch = C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.35.32215\Lib\x64
warning(MsvcLibDir.find): full_path = C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.35.32215\Lib\x64
warning(ZigWindowsSDK.find): msvc_lib_dir = C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.35.32215\Lib\x64
# The directory that contains `stdlib.h`.
# On POSIX-like systems, include directories be found with: `cc -E -Wp,-v -xc /dev/null`
include_dir=C:\Program Files (x86)\Windows Kits\10\Include\10.0.20348.0\ucrt

# The system-specific include directory. May be the same as `include_dir`.
# On Windows it's the directory that includes `vcruntime.h`.
# On POSIX it's the directory that includes `sys/errno.h`.
sys_include_dir=C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.35.32215\include

# The directory that contains `crt1.o` or `crt2.o`.
# On POSIX, can be found with `cc -print-file-name=crt1.o`.
# Not needed when targeting MacOS.
crt_dir=C:\Program Files (x86)\Windows Kits\10\Lib\10.0.20348.0\ucrt\x64

# The directory that contains `vcruntime.lib`.
# Only needed when targeting MSVC on Windows.
msvc_lib_dir=C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.35.32215\Lib\x64

# The directory that contains `kernel32.lib`.
# Only needed when targeting MSVC on Windows.
kernel32_lib_dir=C:\Program Files (x86)\Windows Kits\10\Lib\10.0.20348.0\um\x64

# The directory that contains `crtbeginS.o` and `crtendS.o`
# Only needed when targeting Haiku.
gcc_dir=

BratishkaErik avatar Jun 21 '23 16:06 BratishkaErik

What's left until this is no longer [WIP]?

andrewrk avatar Jun 22 '23 04:06 andrewrk

What's left until this is no longer [WIP]?

sgwong' re-test and someone's test with mutiple Windows 8.1 SDKs

BratishkaErik avatar Jun 22 '23 05:06 BratishkaErik

Also #1840 instead of introducing RegGetValueW. @BratishkaErik I recommend using NtTrace to find the exact calls used.

The-King-of-Toasters avatar Jun 22 '23 08:06 The-King-of-Toasters

Also #1840 instead of introducing RegGetValueW. @BratishkaErik I recommend using NtTrace to find the exact calls used.

Sorry for reply, I'm stupid, I thought it was 10840

BratishkaErik avatar Jun 22 '23 08:06 BratishkaErik

I don't think Windows 8.1 support needs to be a merge blocker, it is already unsupported by Microsoft.

andrewrk avatar Jun 22 '23 09:06 andrewrk

I can't reproduce my environment anymore. Probably I do VS update causing it to change. My VS 2022 VC folder has all the crt and atlmfc folder now. I tested your latest code and it works fine(even your previous code build by squeek502 also works). The zig master detected VS 2019 build tools but your version detected VS 2022 which is fine.

I can't build zig on my windows, so I follow how squeek502 build it with your latest code from your repo, you can check whether I use the latest code or not: libc_only.zip

Here is the output from the patched libc:
c:\Project\zig\ziglang\libc_only>libc_only.exe
warning(Windows10Sdk.find.path10): path_maybe_with_trailing_slash = C:\Program Files (x86)\Windows Kits\10\
warning(Windows10Sdk.find.path10): path_without_trailing_slash = C:\Program Files (x86)\Windows Kits\10
warning(Windows10Sdk.find): path = C:\Program Files (x86)\Windows Kits\10
warning(Windows10Sdk.find.version10): version_without_0 = 10.0.22000
warning(Windows10Sdk.find.version10): version_with_0 = 10.0.22000.0
warning(Windows10Sdk.find): version = 10.0.22000.0
warning(ZigWindowsSDK.find): windows10sdk is null = false
warning(ZigWindowsSDK.find): windows10sdk.path = C:\Program Files (x86)\Windows Kits\10, windows10sdk.version = 10.0.22000.0
warning(ZigWindowsSDK.find): windows81sdk is null = true
warning(MsvcLibDir.findViaRegistry): visualstudio_folder_path = C:\Users\sgwon\AppData\Local\Microsoft\VisualStudio\
warning(iterateAndFilterBySemVer): prefix to check (if any) = none
warning(iterateAndFilterBySemVer): subfolder_name (possibly with prefix) = 16.0
warning(iterateAndFilterBySemVer): subfolder_name = 16.0
warning(iterateAndFilterBySemVer): subfolder_name_normalized = 16.0.0+build.0
warning(iterateAndFilterBySemVer): subfolder_name_normalized as SemVer = 16.0.0+build.0
warning(iterateAndFilterBySemVer): subfolder_name passed check
warning(iterateAndFilterBySemVer): subfolder_name (possibly with prefix) = 16.0_67f2a8e9
warning(iterateAndFilterBySemVer): subfolder_name = 16.0_67f2a8e9
warning(iterateAndFilterBySemVer): subfolder_name_tmp_copy (before replacing _ with .) = 16.0_67f2a8e9
warning(iterateAndFilterBySemVer): subfolder_name_tmp_copy (after  replacing _ with .) = 16.0.67f2a8e9
warning(iterateAndFilterBySemVer): subfolder_name_normalized = 16.0.1+build.67f2a8e9
warning(iterateAndFilterBySemVer): subfolder_name_normalized as SemVer = 16.0.1+build.67f2a8e9
warning(iterateAndFilterBySemVer): subfolder_name passed check
warning(iterateAndFilterBySemVer): subfolder_name (possibly with prefix) = 17.0_f84b1006
warning(iterateAndFilterBySemVer): subfolder_name = 17.0_f84b1006
warning(iterateAndFilterBySemVer): subfolder_name_tmp_copy (before replacing _ with .) = 17.0_f84b1006
warning(iterateAndFilterBySemVer): subfolder_name_tmp_copy (after  replacing _ with .) = 17.0.f84b1006
warning(iterateAndFilterBySemVer): subfolder_name_normalized = 17.0.1+build.f84b1006
warning(iterateAndFilterBySemVer): subfolder_name_normalized as SemVer = 17.0.1+build.f84b1006
warning(iterateAndFilterBySemVer): subfolder_name passed check
warning(iterateAndFilterBySemVer): subfolder_name (possibly with prefix) = BackupFiles
warning(iterateAndFilterBySemVer): subfolder_name = BackupFiles
warning(iterateAndFilterBySemVer): subfolder_name_normalized = BackupFiles.0.0+build.0
warning(iterateAndFilterBySemVer): subfolder_name_normalized as SemVer = error.InvalidVersion
warning(iterateAndFilterBySemVer): subfolder_name (possibly with prefix) = CacheService
warning(iterateAndFilterBySemVer): subfolder_name = CacheService
warning(iterateAndFilterBySemVer): subfolder_name_normalized = CacheService.0.0+build.0
warning(iterateAndFilterBySemVer): subfolder_name_normalized as SemVer = error.InvalidVersion
warning(iterateAndFilterBySemVer): subfolder_name (possibly with prefix) = NestingProfiles
warning(iterateAndFilterBySemVer): subfolder_name = NestingProfiles
warning(iterateAndFilterBySemVer): subfolder_name_normalized = NestingProfiles.0.0+build.0
warning(iterateAndFilterBySemVer): subfolder_name_normalized as SemVer = error.InvalidVersion
warning(iterateAndFilterBySemVer): subfolder_name (possibly with prefix) = Packages
warning(iterateAndFilterBySemVer): subfolder_name = Packages
warning(iterateAndFilterBySemVer): subfolder_name_normali
zed = Packages.0.0+build.0
warning(iterateAndFilterBySemVer): subfolder_name_normalized as SemVer = error.InvalidVersion
warning(iterateAndFilterBySemVer): subfolder_name (possibly with prefix) = RemoteSettings
warning(iterateAndFilterBySemVer): subfolder_name = RemoteSettings
warning(iterateAndFilterBySemVer): subfolder_name_normalized = RemoteSettings.0.0+build.0
warning(iterateAndFilterBySemVer): subfolder_name_normalized as SemVer = error.InvalidVersion
warning(iterateAndFilterBySemVer): subfolder_name (possibly with prefix) = Roslyn
warning(iterateAndFilterBySemVer): subfolder_name = Roslyn
warning(iterateAndFilterBySemVer): subfolder_name_normalized = Roslyn.0.0+build.0
warning(iterateAndFilterBySemVer): subfolder_name_normalized as SemVer = error.InvalidVersion
warning(iterateAndFilterBySemVer): subfolder_name (possibly with prefix) = SettingsLogs
warning(iterateAndFilterBySemVer): subfolder_name = SettingsLogs
warning(iterateAndFilterBySemVer): subfolder_name_normalized = SettingsLogs.0.0+build.0
warning(iterateAndFilterBySemVer): subfolder_name_normalized as SemVer = error.InvalidVersion
warning(iterateAndFilterBySemVer): subfolder_name (possibly with prefix) = vshub
warning(iterateAndFilterBySemVer): subfolder_name = vshub
warning(iterateAndFilterBySemVer): subfolder_name_normalized = vshub.0.0+build.0
warning(iterateAndFilterBySemVer): subfolder_name_normalized as SemVer = error.InvalidVersion
warning(iterateAndFilterBySemVer): subfolder_name (possibly with prefix) = WebView2Cache
warning(iterateAndFilterBySemVer): subfolder_name = WebView2Cache
warning(iterateAndFilterBySemVer): subfolder_name_normalized = WebView2Cache.0.0+build.0
warning(iterateAndFilterBySemVer): subfolder_name_normalized as SemVer = error.InvalidVersion
warning(iterateAndFilterBySemVer): Before sorting:
warning(iterateAndFilterBySemVer): Filtered dir 0 = 16.0
warning(iterateAndFilterBySemVer): Filtered dir 1 = 16.0_67f2a8e9
warning(iterateAndFilterBySemVer): Filtered dir 2 = 17.0_f84b1006
warning(iterateAndFilterBySemVer): After sorting:
warning(iterateAndFilterBySemVer): Filtered dir 0 = 17.0_f84b1006
warning(iterateAndFilterBySemVer): Filtered dir 1 = 16.0_67f2a8e9
warning(iterateAndFilterBySemVer): Filtered dir 2 = 16.0
warning(MsvcLibDir.findViaRegistry.source_directories): vs_version = 17.0_f84b1006
warning(MsvcLibDir.findViaRegistry.source_directories): privateregistry_absolute_path = C:\Users\sgwon\AppData\Local\Microsoft\VisualStudio\17.0_f84b1006\privateregistry.bin
warning(MsvcLibDir.findViaRegistry.source_directories): loadFromPath successfully!
warning(MsvcLibDir.findViaRegistry.source_directories): config_subkey = Software\Microsoft\VisualStudio\17.0_f84b1006_Config
warning(MsvcLibDir.findViaRegistry.source_directories): Source Directories succesfully read, len = 1542
warning(MsvcLibDir.findViaRegistry): source_directories = C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.36.32532\include\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.36.32532\include\cvt\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.36.32532\include\msclr\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.36.32532\include\sys\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.36.32532\crt\src\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.36.32532\crt\src\x64\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.36.32532\crt\src\arm\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.36.32532\crt\src\concrt\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.36.32532\crt\src\i386\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.36.32532\crt\src\linkopts\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.36.32532\crt\src\stl\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.36.32532\crt\src\vccorlib\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.36.32532\crt\src\vcruntime\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.36.32532\atlmfc\src\mfc\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.36.32532\atlmfc\src\atl\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.36.32532\atlmfc\include\
warning(MsvcLibDir.findViaRegistry): value of SourceDirectories in VisualStudio registry, separated:
warning(MsvcLibDir.findViaRegistry): 0: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.36.32532\include\
warning(MsvcLibDir.findViaRegistry): 1: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.36.32532\include\cvt\
warning(MsvcLibDir.findViaRegistry): 2: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.36.32532\include\msclr\
warning(MsvcLibDir.findViaRegistry): 3: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.36.32532\include\sys\
warning(MsvcLibDir.findViaRegistry): 4: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.36.32532\crt\src\
warning(MsvcLibDir.findViaRegistry): 5: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.36.32532\crt\src\x64\
warning(MsvcLibDir.findViaRegistry): 6: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.36.32532\crt\src\arm\
warning(MsvcLibDir.findViaRegistry): 7: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.36.32532\crt\src\concrt\
warning(MsvcLibDir.findViaRegistry): 8: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.36.32532\crt\src\i386\
warning(MsvcLibDir.findViaRegistry): 9: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.36.32532\crt\src\linkopts\
warning(MsvcLibDir.findViaRegistry): 10: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.36.32532\crt\src\stl\
warning(MsvcLibDir.findViaRegistry): 11: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.36.32532\crt\src\vccorlib\
warning(MsvcLibDir.findViaRegistry): 12: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.36.32532\crt\src\vcruntime\
warning(MsvcLibDir.findViaRegistry): 13: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.36.32532\atlmfc\src\mfc\
warning(MsvcLibDir.findViaRegistry): 14: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.36.32532\atlmfc\src\atl\
warning(MsvcLibDir.findViaRegistry): 15: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.36.32532\atlmfc\include\
warning(MsvcLibDir.findViaRegistry.msvc_dir): msvc_include_dir_maybe_with_trailing_slash = C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.36.32532\include\
warning(MsvcLibDir.findViaRegistry.msvc_dir): msvc_dir_with_arch = C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.36.32532\Lib\x64
warning(MsvcLibDir.find): full_path = C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.36.32532\Lib\x64
warning(ZigWindowsSDK.find): msvc_lib_dir = C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.36.32532\Lib\x64
# The directory that contains `stdlib.h`.
# On POSIX-like systems, include directories be found with: `cc -E -Wp,-v -xc /dev/null`
include_dir=C:\Program Files (x86)\Windows Kits\10\Include\10.0.22000.0\ucrt

# The system-specific include directory. May be the same as `include_dir`.
# On Windows it's the directory that includes `vcruntime.h`.
# On POSIX it's the directory that includes `sys/errno.h`.
sys_include_dir=C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.36.32532\include

# The directory that contains `crt1.o` or `crt2.o`.
# On POSIX, can be found with `cc -print-file-name=crt1.o`.
# Not needed when targeting MacOS.
crt_dir=C:\Program Files (x86)\Windows Kits\10\Lib\10.0.22000.0\ucrt\x64

# The directory that contains `vcruntime.lib`.
# Only needed when targeting MSVC on Windows.
msvc_lib_dir=C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.36.32532\Lib\x64

# The directory that contains `kernel32.lib`.
# Only needed when targeting MSVC on Windows.
kernel32_lib_dir=C:\Program Files (x86)\Windows Kits\10\Lib\10.0.22000.0\um\x64

# The directory that contains `crtbeginS.o` and `crtendS.o`
# Only needed when targeting Haiku.
gcc_dir=

Here is the zig master output:
# The directory that contains `stdlib.h`.
# On POSIX-like systems, include directories be found with: `cc -E -Wp,-v -xc /dev/null`
include_dir=C:\Program Files (x86)\Windows Kits\10\Include\10.0.22000.0\ucrt

# The system-specific include directory. May be the same as `include_dir`.
# On Windows it's the directory that includes `vcruntime.h`.
# On POSIX it's the directory that includes `sys/errno.h`.
sys_include_dir=C:\Program Files (x86)\Microsoft Visual Studio\2019\BuildTools\VC\Tools\MSVC\14.29.30037\include

# The directory that contains `crt1.o` or `crt2.o`.
# On POSIX, can be found with `cc -print-file-name=crt1.o`.
# Not needed when targeting MacOS.
crt_dir=C:\Program Files (x86)\Windows Kits\10\Lib\10.0.22000.0\ucrt\x64

# The directory that contains `vcruntime.lib`.
# Only needed when targeting MSVC on Windows.
msvc_lib_dir=C:\Program Files (x86)\Microsoft Visual Studio\2019\BuildTools\VC\Tools\MSVC\14.29.30037\lib\x64\

# The directory that contains `kernel32.lib`.
# Only needed when targeting MSVC on Windows.
kernel32_lib_dir=C:\Program Files (x86)\Windows Kits\10\Lib\10.0.22000.0\um\x64

# The directory that contains `crtbeginS.o` and `crtendS.o`
# Only needed when targeting Haiku.
gcc_dir=

sgwong avatar Jun 22 '23 09:06 sgwong

Still looks good on my Windows installs.

Windows 10
warning(Windows10Sdk.find.path10): path_maybe_with_trailing_slash = C:\Program Files (x86)\Windows Kits\10\
warning(Windows10Sdk.find.path10): path_without_trailing_slash = C:\Program Files (x86)\Windows Kits\10
warning(Windows10Sdk.find): path = C:\Program Files (x86)\Windows Kits\10
warning(Windows10Sdk.find.version10): version_without_0 = 10.0.22621
warning(Windows10Sdk.find.version10): version_with_0 = 10.0.22621.0
warning(Windows10Sdk.find): version = 10.0.22621.0
warning(ZigWindowsSDK.find): windows10sdk is null = false
warning(ZigWindowsSDK.find): windows10sdk.path = C:\Program Files (x86)\Windows Kits\10, windows10sdk.version = 10.0.22621.0
warning(ZigWindowsSDK.find): windows81sdk is null = true
warning(MsvcLibDir.findViaRegistry): visualstudio_folder_path = C:\Users\Ryan\AppData\Local\Microsoft\VisualStudio\
warning(iterateAndFilterBySemVer): prefix to check (if any) = none
warning(iterateAndFilterBySemVer): subfolder_name (possibly with prefix) = 17.0_80a758ca
warning(iterateAndFilterBySemVer): subfolder_name = 17.0_80a758ca
warning(iterateAndFilterBySemVer): subfolder_name_tmp_copy (before replacing _ with .) = 17.0_80a758ca
warning(iterateAndFilterBySemVer): subfolder_name_tmp_copy (after  replacing _ with .) = 17.0.80a758ca
warning(iterateAndFilterBySemVer): subfolder_name_normalized = 17.0.1+build.80a758ca
warning(iterateAndFilterBySemVer): subfolder_name_normalized as SemVer = 17.0.1+build.80a758ca
warning(iterateAndFilterBySemVer): subfolder_name passed check
warning(iterateAndFilterBySemVer): subfolder_name (possibly with prefix) = BackupFiles
warning(iterateAndFilterBySemVer): subfolder_name = BackupFiles
warning(iterateAndFilterBySemVer): subfolder_name_normalized = BackupFiles.0.0+build.0
warning(iterateAndFilterBySemVer): subfolder_name_normalized as SemVer = error.InvalidVersion
warning(iterateAndFilterBySemVer): subfolder_name (possibly with prefix) = CacheService
warning(iterateAndFilterBySemVer): subfolder_name = CacheService
warning(iterateAndFilterBySemVer): subfolder_name_normalized = CacheService.0.0+build.0
warning(iterateAndFilterBySemVer): subfolder_name_normalized as SemVer = error.InvalidVersion
warning(iterateAndFilterBySemVer): subfolder_name (possibly with prefix) = Packages
warning(iterateAndFilterBySemVer): subfolder_name = Packages
warning(iterateAndFilterBySemVer): subfolder_name_normalized = Packages.0.0+build.0
warning(iterateAndFilterBySemVer): subfolder_name_normalized as SemVer = error.InvalidVersion
warning(iterateAndFilterBySemVer): subfolder_name (possibly with prefix) = RemoteSettings
warning(iterateAndFilterBySemVer): subfolder_name = RemoteSettings
warning(iterateAndFilterBySemVer): subfolder_name_normalized = RemoteSettings.0.0+build.0
warning(iterateAndFilterBySemVer): subfolder_name_normalized as SemVer = error.InvalidVersion
warning(iterateAndFilterBySemVer): subfolder_name (possibly with prefix) = Roslyn
warning(iterateAndFilterBySemVer): subfolder_name = Roslyn
warning(iterateAndFilterBySemVer): subfolder_name_normalized = Roslyn.0.0+build.0
warning(iterateAndFilterBySemVer): subfolder_name_normalized as SemVer = error.InvalidVersion
warning(iterateAndFilterBySemVer): subfolder_name (possibly with prefix) = SettingsLogs
warning(iterateAndFilterBySemVer): subfolder_name = SettingsLogs
warning(iterateAndFilterBySemVer): subfolder_name_normalized = SettingsLogs.0.0+build.0
warning(iterateAndFilterBySemVer): subfolder_name_normalized as SemVer = error.InvalidVersion
warning(iterateAndFilterBySemVer): subfolder_name (possibly with prefix) = vshub
warning(iterateAndFilterBySemVer): subfolder_name = vshub
warning(iterateAndFilterBySemVer): subfolder_name_normalized = vshub.0.0+build.0
warning(iterateAndFilterBySemVer): subfolder_name_normalized as SemVer = error.InvalidVersion
warning(iterateAndFilterBySemVer): subfolder_name (possibly with prefix) = WebView2Cache
warning(iterateAndFilterBySemVer): subfolder_name = WebView2Cache
warning(iterateAndFilterBySemVer): subfolder_name_normalized = WebView2Cache.0.0+build.0
warning(iterateAndFilterBySemVer): subfolder_name_normalized as SemVer = error.InvalidVersion
warning(iterateAndFilterBySemVer): Before sorting:
warning(iterateAndFilterBySemVer): Filtered dir 0 = 17.0_80a758ca
warning(iterateAndFilterBySemVer): After sorting:
warning(iterateAndFilterBySemVer): Filtered dir 0 = 17.0_80a758ca
warning(MsvcLibDir.findViaRegistry.source_directories): vs_version = 17.0_80a758ca
warning(MsvcLibDir.findViaRegistry.source_directories): privateregistry_absolute_path = C:\Users\Ryan\AppData\Local\Microsoft\VisualStudio\17.0_80a758ca\privateregistry.bin
warning(MsvcLibDir.findViaRegistry.source_directories): loadFromPath successfully!
warning(MsvcLibDir.findViaRegistry.source_directories): config_subkey = Software\Microsoft\VisualStudio\17.0_80a758ca_Config
warning(MsvcLibDir.findViaRegistry.source_directories): Source Directories succesfully read, len = 1542
warning(MsvcLibDir.findViaRegistry): source_directories = C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\include\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\include\cvt\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\include\msclr\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\include\sys\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\crt\src\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\crt\src\x64\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\crt\src\arm\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\crt\src\concrt\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\crt\src\i386\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\crt\src\linkopts\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\crt\src\stl\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\crt\src\vccorlib\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\crt\src\vcruntime\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\src\mfc\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\src\atl\;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\
warning(MsvcLibDir.findViaRegistry): value of SourceDirectories in VisualStudio registry, separated: 
warning(MsvcLibDir.findViaRegistry): 0: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\include\
warning(MsvcLibDir.findViaRegistry): 1: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\include\cvt\
warning(MsvcLibDir.findViaRegistry): 2: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\include\msclr\
warning(MsvcLibDir.findViaRegistry): 3: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\include\sys\
warning(MsvcLibDir.findViaRegistry): 4: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\crt\src\
warning(MsvcLibDir.findViaRegistry): 5: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\crt\src\x64\
warning(MsvcLibDir.findViaRegistry): 6: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\crt\src\arm\
warning(MsvcLibDir.findViaRegistry): 7: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\crt\src\concrt\
warning(MsvcLibDir.findViaRegistry): 8: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\crt\src\i386\
warning(MsvcLibDir.findViaRegistry): 9: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\crt\src\linkopts\
warning(MsvcLibDir.findViaRegistry): 10: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\crt\src\stl\
warning(MsvcLibDir.findViaRegistry): 11: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\crt\src\vccorlib\
warning(MsvcLibDir.findViaRegistry): 12: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\crt\src\vcruntime\
warning(MsvcLibDir.findViaRegistry): 13: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\src\mfc\
warning(MsvcLibDir.findViaRegistry): 14: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\src\atl\
warning(MsvcLibDir.findViaRegistry): 15: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\atlmfc\include\
warning(MsvcLibDir.findViaRegistry.msvc_dir): msvc_include_dir_maybe_with_trailing_slash = C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\include\
warning(MsvcLibDir.findViaRegistry.msvc_dir): msvc_dir_with_arch = C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\Lib\x64
warning(MsvcLibDir.find): full_path = C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\Lib\x64
warning(ZigWindowsSDK.find): msvc_lib_dir = C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\Lib\x64
# The directory that contains `stdlib.h`.
# On POSIX-like systems, include directories be found with: `cc -E -Wp,-v -xc /dev/null`
include_dir=C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt

# The system-specific include directory. May be the same as `include_dir`.
# On Windows it's the directory that includes `vcruntime.h`.
# On POSIX it's the directory that includes `sys/errno.h`.
sys_include_dir=C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\include

# The directory that contains `crt1.o` or `crt2.o`.
# On POSIX, can be found with `cc -print-file-name=crt1.o`.
# Not needed when targeting MacOS.
crt_dir=C:\Program Files (x86)\Windows Kits\10\Lib\10.0.22621.0\ucrt\x64

# The directory that contains `vcruntime.lib`.
# Only needed when targeting MSVC on Windows.
msvc_lib_dir=C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.34.31933\Lib\x64

# The directory that contains `kernel32.lib`.
# Only needed when targeting MSVC on Windows.
kernel32_lib_dir=C:\Program Files (x86)\Windows Kits\10\Lib\10.0.22621.0\um\x64

# The directory that contains `crtbeginS.o` and `crtendS.o`
# Only needed when targeting Haiku.
gcc_dir=
Windows 7
warning(Windows10Sdk.find.path10): path_maybe_with_trailing_slash = C:\Program Files (x86)\Windows Kits\10\
warning(Windows10Sdk.find.path10): path_without_trailing_slash = C:\Program Files (x86)\Windows Kits\10
warning(Windows10Sdk.find): path = C:\Program Files (x86)\Windows Kits\10
warning(Windows10Sdk.find.version10): version_without_0 = 10.0.17134
warning(Windows10Sdk.find.version10): version_with_0 = 10.0.17134.0
warning(Windows10Sdk.find): version = 10.0.17134.0
warning(ZigWindowsSDK.find): windows10sdk is null = false
warning(ZigWindowsSDK.find): windows10sdk.path = C:\Program Files (x86)\Windows Kits\10, windows10sdk.version = 10.0.17134.0
warning(Windows81Sdk.find.path81): path_maybe_with_trailing_slash = C:\Program Files (x86)\Windows Kits\8.1\
warning(Windows81Sdk.find.path81): path_without_trailing_slash = C:\Program Files (x86)\Windows Kits\8.1
warning(Windows81Sdk.find): path = C:\Program Files (x86)\Windows Kits\8.1
warning(Windows81Sdk.find.version81): sdk_lib_dir_path = C:\Program Files (x86)\Windows Kits\8.1\Lib\
warning(iterateAndFilterBySemVer): prefix to check (if any) = winv
warning(iterateAndFilterBySemVer): subfolder_name (possibly with prefix) = winv6.3
warning(iterateAndFilterBySemVer): subfolder_name = 6.3
warning(iterateAndFilterBySemVer): subfolder_name_normalized = 6.3.0+build.0
warning(iterateAndFilterBySemVer): subfolder_name_normalized as SemVer = 6.3.0+build.0
warning(iterateAndFilterBySemVer): subfolder_name passed check
warning(iterateAndFilterBySemVer): Before sorting:
warning(iterateAndFilterBySemVer): Filtered dir 0 = 6.3
warning(iterateAndFilterBySemVer): After sorting:
warning(iterateAndFilterBySemVer): Filtered dir 0 = 6.3
warning(Windows81Sdk.find.version81): latest_version = 6.3
warning(Windows81Sdk.find): version = 6.3
warning(ZigWindowsSDK.find): windows81sdk is null = false
warning(ZigWindowsSDK.find): windows81sdk.path = C:\Program Files (x86)\Windows Kits\8.1, windows81sdk.version = 6.3
warning(MsvcLibDir.findViaRegistry): visualstudio_folder_path = C:\Users\Ryan\AppData\Local\Microsoft\VisualStudio\
warning(iterateAndFilterBySemVer): prefix to check (if any) = none
warning(iterateAndFilterBySemVer): subfolder_name (possibly with prefix) = 14.0
warning(iterateAndFilterBySemVer): subfolder_name = 14.0
warning(iterateAndFilterBySemVer): subfolder_name_normalized = 14.0.0+build.0
warning(iterateAndFilterBySemVer): subfolder_name_normalized as SemVer = 14.0.0+build.0
warning(iterateAndFilterBySemVer): subfolder_name passed check
warning(iterateAndFilterBySemVer): subfolder_name (possibly with prefix) = 15.0
warning(iterateAndFilterBySemVer): subfolder_name = 15.0
warning(iterateAndFilterBySemVer): subfolder_name_normalized = 15.0.0+build.0
warning(iterateAndFilterBySemVer): subfolder_name_normalized as SemVer = 15.0.0+build.0
warning(iterateAndFilterBySemVer): subfolder_name passed check
warning(iterateAndFilterBySemVer): subfolder_name (possibly with prefix) = 15.0_6b9e52af
warning(iterateAndFilterBySemVer): subfolder_name = 15.0_6b9e52af
warning(iterateAndFilterBySemVer): subfolder_name_tmp_copy (before replacing _ with .) = 15.0_6b9e52af
warning(iterateAndFilterBySemVer): subfolder_name_tmp_copy (after  replacing _ with .) = 15.0.6b9e52af
warning(iterateAndFilterBySemVer): subfolder_name_normalized = 15.0.1+build.6b9e52af
warning(iterateAndFilterBySemVer): subfolder_name_normalized as SemVer = 15.0.1+build.6b9e52af
warning(iterateAndFilterBySemVer): subfolder_name passed check
warning(iterateAndFilterBySemVer): subfolder_name (possibly with prefix) = Packages
warning(iterateAndFilterBySemVer): subfolder_name = Packages
warning(iterateAndFilterBySemVer): subfolder_name_normalized = Packages.0.0+build.0
warning(iterateAndFilterBySemVer): subfolder_name_normalized as SemVer = error.InvalidVersion
warning(iterateAndFilterBySemVer): subfolder_name (possibly with prefix) = SettingsLogs
warning(iterateAndFilterBySemVer): subfolder_name = SettingsLogs
warning(iterateAndFilterBySemVer): subfolder_name_normalized = SettingsLogs.0.0+build.0
warning(iterateAndFilterBySemVer): subfolder_name_normalized as SemVer = error.InvalidVersion
warning(iterateAndFilterBySemVer): subfolder_name (possibly with prefix) = vshub
warning(iterateAndFilterBySemVer): subfolder_name = vshub
warning(iterateAndFilterBySemVer): subfolder_name_normalized = vshub.0.0+build.0
warning(iterateAndFilterBySemVer): subfolder_name_normalized as SemVer = error.InvalidVersion
warning(iterateAndFilterBySemVer): Before sorting:
warning(iterateAndFilterBySemVer): Filtered dir 0 = 14.0
warning(iterateAndFilterBySemVer): Filtered dir 1 = 15.0
warning(iterateAndFilterBySemVer): Filtered dir 2 = 15.0_6b9e52af
warning(iterateAndFilterBySemVer): After sorting:
warning(iterateAndFilterBySemVer): Filtered dir 0 = 15.0_6b9e52af
warning(iterateAndFilterBySemVer): Filtered dir 1 = 15.0
warning(iterateAndFilterBySemVer): Filtered dir 2 = 14.0
warning(MsvcLibDir.findViaRegistry.source_directories): vs_version = 15.0_6b9e52af
warning(MsvcLibDir.findViaRegistry.source_directories): privateregistry_absolute_path = C:\Users\Ryan\AppData\Local\Microsoft\VisualStudio\15.0_6b9e52af\privateregistry.bin
warning(MsvcLibDir.findViaRegistry.source_directories): loadFromPath successfully!
warning(MsvcLibDir.findViaRegistry.source_directories): config_subkey = Software\Microsoft\VisualStudio\15.0_6b9e52af_Config
warning(MsvcLibDir.findViaRegistry.source_directories): Source Directories succesfully read, len = 1739
warning(MsvcLibDir.findViaRegistry): source_directories = C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.15.26726\include\;C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.15.26726\include\cvt\;C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.15.26726\include\msclr\;C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.15.26726\include\sys\;C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.15.26726\include\thr\;C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.15.26726\crt\src\;C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.15.26726\crt\src\x64\;C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.15.26726\crt\src\arm\;C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.15.26726\crt\src\concrt\;C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.15.26726\crt\src\i386\;C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.15.26726\crt\src\linkopts\;C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.15.26726\crt\src\stl\;C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.15.26726\crt\src\vccorlib\;C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.15.26726\crt\src\vcruntime\;C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.15.26726\atlmfc\src\mfc\;C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.15.26726\atlmfc\src\atl\;C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.15.26726\atlmfc\include\
warning(MsvcLibDir.findViaRegistry): value of SourceDirectories in VisualStudio registry, separated: 
warning(MsvcLibDir.findViaRegistry): 0: C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.15.26726\include\
warning(MsvcLibDir.findViaRegistry): 1: C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.15.26726\include\cvt\
warning(MsvcLibDir.findViaRegistry): 2: C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.15.26726\include\msclr\
warning(MsvcLibDir.findViaRegistry): 3: C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.15.26726\include\sys\
warning(MsvcLibDir.findViaRegistry): 4: C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.15.26726\include\thr\
warning(MsvcLibDir.findViaRegistry): 5: C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.15.26726\crt\src\
warning(MsvcLibDir.findViaRegistry): 6: C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.15.26726\crt\src\x64\
warning(MsvcLibDir.findViaRegistry): 7: C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.15.26726\crt\src\arm\
warning(MsvcLibDir.findViaRegistry): 8: C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.15.26726\crt\src\concrt\
warning(MsvcLibDir.findViaRegistry): 9: C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.15.26726\crt\src\i386\
warning(MsvcLibDir.findViaRegistry): 10: C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.15.26726\crt\src\linkopts\
warning(MsvcLibDir.findViaRegistry): 11: C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.15.26726\crt\src\stl\
warning(MsvcLibDir.findViaRegistry): 12: C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.15.26726\crt\src\vccorlib\
warning(MsvcLibDir.findViaRegistry): 13: C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.15.26726\crt\src\vcruntime\
warning(MsvcLibDir.findViaRegistry): 14: C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.15.26726\atlmfc\src\mfc\
warning(MsvcLibDir.findViaRegistry): 15: C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.15.26726\atlmfc\src\atl\
warning(MsvcLibDir.findViaRegistry): 16: C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.15.26726\atlmfc\include\
warning(MsvcLibDir.findViaRegistry.msvc_dir): msvc_include_dir_maybe_with_trailing_slash = C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.15.26726\include\
warning(MsvcLibDir.findViaRegistry.msvc_dir): msvc_dir_with_arch = C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.15.26726\Lib\x64
warning(MsvcLibDir.find): full_path = C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.15.26726\Lib\x64
warning(ZigWindowsSDK.find): msvc_lib_dir = C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.15.26726\Lib\x64
# The directory that contains `stdlib.h`.
# On POSIX-like systems, include directories be found with: `cc -E -Wp,-v -xc /dev/null`
include_dir=C:\Program Files (x86)\Windows Kits\10\Include\10.0.17134.0\ucrt

# The system-specific include directory. May be the same as `include_dir`.
# On Windows it's the directory that includes `vcruntime.h`.
# On POSIX it's the directory that includes `sys/errno.h`.
sys_include_dir=C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.15.26726\include

# The directory that contains `crt1.o` or `crt2.o`.
# On POSIX, can be found with `cc -print-file-name=crt1.o`.
# Not needed when targeting MacOS.
crt_dir=C:\Program Files (x86)\Windows Kits\10\Lib\10.0.17134.0\ucrt\x64

# The directory that contains `vcruntime.lib`.
# Only needed when targeting MSVC on Windows.
msvc_lib_dir=C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.15.26726\Lib\x64

# The directory that contains `kernel32.lib`.
# Only needed when targeting MSVC on Windows.
kernel32_lib_dir=C:\Program Files (x86)\Windows Kits\10\Lib\10.0.17134.0\um\x64

# The directory that contains `crtbeginS.o` and `crtendS.o`
# Only needed when targeting Haiku.
gcc_dir=

Here's an up-to-date libc_only.exe build if that's helpful for anyone else that wants to test it on their system:

libc_only-20230621.zip

squeek502 avatar Jun 22 '23 12:06 squeek502

Any reason this is still draft/WIP? It looks ready to me.

andrewrk avatar Jul 23 '23 19:07 andrewrk

Any reason this is still draft/WIP? It looks ready to me.

I tried to rewrite it using Native API as suggested by @The-King-of-Toasters , but I was blocked half-way by RegLoadAppKey which I couldn't rewrite in lower-level terms (seems like it's impossible without requesting privileges (which advapi dll already has), but in this case it will be practically no different from RegLoadKey/NtLoadKey). I tried to keep only RegLoadAppKey from advapi and use ntapi everywhere else, but unfortunately I didn't succeed and it looks like I need to use duplicate functions from advapi just for RegLoadAppKey. So shortly:

  • Rewrite everything in NT and deal with the fact that Zig now asks some permissions from the user (obviously bas scenario) (maybe there is a way, but I did not find one)
  • Rewrite everything excluding RegLoadAppKey in NT and duplicate some advapi functions just for RegLoadAppKey (like in previous commits)
  • (For now) leave it on advapi (pre-rewrite tested working version and version now (they are identical))
  • Find some way to detect Visual Studio's MSVC without using registry.bin (old way from windows_sdk.cpp will (IIUC) still keep C++ dependency, so some other way)

BratishkaErik avatar Jul 24 '23 15:07 BratishkaErik

Go ahead and use advapi. This is the compiler, not the standard library. The compiler doesn't need to limit to ntdll.

andrewrk avatar Jul 24 '23 16:07 andrewrk