NativeAOT fails with "Platform linker not found" when a non-MSVC link.exe is earlier on PATH

Open
#159 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Assessment

Difficulty
4/5
Estimated time
3-5 days
Newbie friendliness
48/100
Issue type
Bug
Clarity
Mostly clear
Activity status
Quiet
Tech stack
rust
Domain
cli

Research direction

No repository files or tests are named. Start by reproducing a Windows NativeAOT publish with the coreutils link.exe earlier on PATH, then compare that behavior with the documented Visual Studio prerequisites. Done should be defined by a clear resolution for the link.exe name collision while preserving the reported coreutils installation behavior.

Written by the indexing model from the issue text.

Description

E-needs-discussion

When publishing a NativeAOT application on Windows, the build fails with:
Platform linker not found. Ensure you have all the required prerequisites documented at https://aka.ms/nativeaot-prerequisites, in particular the Desktop Development for C++ workload in Visual Studio.

However, the required Visual Studio C++ workloads, Windows SDKs, and MSVC toolchain are all correctly installed.

The actual cause was that another executable named link.exe (from Coreutils) existed earlier on the system PATH.

After removing coreutils, NativeAOT published successfully without any other changes.

Dominant language
Rust
Stars
5.2k
Forks
107
Avg merge
2d 19h
Merged PRs (30d)
4

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from microsoft/coreutils

All issues in microsoft/coreutils

Similar issues

More Rust issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.