UWP target (e.g. x86_64-uwp-windows-msvc) is broken #138257
Labels
C-bug
Category: This is a bug.
O-uwp-windows-msvc
Windows targets for Universal Windows Platform (UWP) applications, using MSVC toolchain.
T-libs
Relevant to the library team, which will review and decide on the PR/issue.
I tried to compile x86_64-uwp-windows-msvc on nightly rust using
-Z build-std
. I usedstaticlib
as target type. Then I tried to link the successfully created .lib file into my exe - outside of rust ecosystem. The linker failed with this error:error LNK2019: unresolved external symbol __imp_NtOpenFile referenced in function _ZN3std3sys3pal7windows2fs14remove_dir_all12nt_open_file17h43bb929b19188a87E
My successful cargo command which created my staticlib which is unusable in UWP is:
The issue is due to rust's std lib using NtOpenFile function which is not available for UWP applications. This regression was introduced in bb9d5c4
The usage of the function is not guarded by the
#[cfg(target_vendor = "uwp")]
feature here:rust/library/std/src/sys/pal/windows/fs/remove_dir_all.rs
Line 55 in 446649d
The way I understand it, all uwp targets are unusable since the above mentioned commit around September 2024 because the rust's std library uses function not allowed for uwp applications.
The text was updated successfully, but these errors were encountered: