-
Notifications
You must be signed in to change notification settings - Fork 13.8k
Description
I intend to move to the x86_64-pc-windows-gnullvm
target, because x86_64-pc-windows-msvc
requires a Visual Studio installation and x86_64-pc-windows-gnu
is plagued by bugs like #139070 and currently unmaintained.
When I set up nightly-2025-09-15-x86_64-pc-windows-gnullvm
on a pristine Windows OS and attempt to build the simplest possible application, I get:
> cargo new testapp
Creating binary (application) `testapp` package
note: see more `Cargo.toml` keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
> cargo build
Compiling testapp v0.1.0 (C:\Users\Test User\testapp)
error: linker `x86_64-w64-mingw32-clang` not found
|
= note: program not found
error: could not compile `testapp` (bin "testapp") due to 1 previous error
This works out of the box with x86_64-pc-windows-gnu
, because that target ships a minimal x86_64-w64-mingw32-gcc.exe
that is used for linking.
Expected result
I expect x86_64-pc-windows-gnullvm
to also ship with all required components out of the box to build and link Rust applications. It's totally understandable if Rust projects importing C code need an external C compiler, but Rust-only projects should build without external components.
Not having this feature would seriously impact the usefulness of this target: On the one hand, the target wouldn't work out of the box. Another downside is that there's currently only a single source for a compatible toolchain: https://github.com/mstorsjo/llvm-mingw
What are the plans to get x86_64-pc-windows-gnullvm
to work out of the box?
Can Rust ship a minimal linker-only x86_64-w64-mingw32-clang.exe
just like the corresponding -gnu target does?
CC @mati865