Visual Studio log screenshot: 19> Searching C:\Program Files (x86)\Microsoft SDKs\Windows\v7.1A\lib\x64\kernel32.lib: 19> Found __imp_ReleaseSRWLockExclusive 19> Referenced in LIBCMT.lib(thread_safe_statics.obj) 19> Loaded kernel32.lib(KERNEL32.dll) 19> Found __imp_AcquireSRWLockExclusive 19> Referenced in LIBCMT.lib(thread_safe_statics.obj) 19> Loaded kernel32.lib(KERNEL32.dll) 19> Found __imp_WakeAllConditionVariable 19> Referenced in LIBCMT.lib(thread_safe_statics.obj) 19> Loaded kernel32.lib(KERNEL32.dll) 19> Found __imp_SleepConditionVariableSRW 19> Referenced in LIBCMT.lib(thread_safe_statics.obj) 19> Loaded kernel32.lib(KERNEL32.dll)
So the "Visual Studio 2017 - Windows XP (v141_xp)" toolchain has a C runtime that links directly against functions that exist only in Vista and up, and therefore cannot compile binaries that actually run on Windows XP, good job Microsoft