-
Notifications
You must be signed in to change notification settings - Fork 439
Closed as not planned
Closed as not planned
Copy link
Description
Most OSes are becoming multi-arch, in the sense that it's possible to run multiple different architectures on the same machine. For example:
- Windows x64 and x86 - existing problem
- Apple M1 x64 and arm64
- Windows x64 and arm64
- and so on (pending future support for platform/architecture matrix)
On all platforms, the default installers will put the location of dotnet
into PATH
. But if they install the second architecture, the resulting experience is confusing to the users. For example:
- Install x64 .NET 5 on Windows (
C:\Program Files\dotnet
is added to thePATH
) - Install x86 .NET 3.1 on Windows (
C:\Program Files (x86)\dotnet
is appended to thePATH
)
The end result is that both x64 and x86 are onPATH
, but the first one wins, so running:
dotnet --info
Will run the x64 version and only list 5.0 as installed. Alsodotnet app.dll
won't work on 3.1 app, even though it was just installed.
Installers should recognize that another architecture is already on the machine and that it's on PATH
and inform user about this behavior.
See dotnet/runtime#3820 (comment) for another great example of this problem and how installer warning would help.
Rick-Anderson
Metadata
Metadata
Assignees
Labels
No labels