dotnet / winforms

Windows Forms is a .NET UI framework for building Windows desktop applications.
MIT License
4.37k stars 966 forks source link

Build doesn't work on Windows Arm64 #12207

Open richlander opened 1 day ago

richlander commented 1 day ago

.NET version

main branch

Issue description

The build seems to download a mix of architectures. Doesn't quite seem right. I expect that's what is causing the fxr issue.

Steps to reproduce

C:\Users\rlander\git\winforms>build.cmd
Variable NativeToolsOnMachine detected, enabling native tool path promotion...
Processing C:\Users\rlander\git\winforms\global.json
GET https://dotnet.microsoft.com/download/dotnet/scripts/v1/dotnet-install.ps1
  Attempting to install 'sdk v9.0.100-rc.1.24452.12' from public location.
dotnet-install: Remote file https://dotnetcli.azureedge.net/dotnet/Sdk/9.0.100-rc.1.24452.12/dotnet-sdk-9.0.100-rc.1.24452.12-win-arm64.zip size is 280278073 bytes.
dotnet-install: Downloaded file https://dotnetcli.azureedge.net/dotnet/Sdk/9.0.100-rc.1.24452.12/dotnet-sdk-9.0.100-rc.1.24452.12-win-arm64.zip size is 280278073 bytes.
dotnet-install: The remote and local file sizes are equal.
dotnet-install: Extracting the archive.
dotnet-install: Adding to current process PATH: "C:\Users\rlander\git\winforms\.dotnet\". Note: This change will not be visible if PowerShell was run as a child process.
dotnet-install: Note that the script does not resolve dependencies during installation.
dotnet-install: To check the list of dependencies, go to https://learn.microsoft.com/dotnet/core/install/windows#dependencies
dotnet-install: Installed version is 9.0.100-rc.1.24452.12
dotnet-install: Installation finished
  C:\Users\rlander\.nuget\packages\microsoft.dotnet.arcade.sdk\10.0.0-beta.24467.1\tools\Tools.proj      Restore (1.7s)
  Attempting to install runtime toolset 'dotnet/x64 v10.0.0-alpha.1.24467.15' from public location.              (7.2s)
dotnet-install: Remote file https://dotnetbuilds.azureedge.net/public/Runtime/10.0.0-alpha.1.24467.15/dotnet-runtime-10.0.0-alpha.1.24467.15-win-x64.zip size is 34515241 bytes.
dotnet-install: Downloaded file https://dotnetbuilds.azureedge.net/public/Runtime/10.0.0-alpha.1.24467.15/dotnet-runtime-10.0.0-alpha.1.24467.15-win-x64.zip size is 34515241 bytes.
dotnet-install: The remote and local file sizes are equal.                                                       (7.3s)
dotnet-install: Extracting the archive.                                                                          (8.8s)
dotnet-install: Note that the script does not resolve dependencies during installation.                          (8.9s)
dotnet-install: To check the list of dependencies, go to https://learn.microsoft.com/dotnet/core/install/windows#dependencies                                                                                                            (8.9s)
dotnet-install: Installed version is 10.0.0-alpha.1.24467.15
  C:\Users\rlander\.nuget\packages\microsoft.dotnet.arcade.sdk\10.0.0-beta.24467.1\tools\Tools.proj     Restore (10.2s)
GET https://dotnet.microsoft.com/download/dotnet/scripts/v1/dotnet-install.ps1                                  (10.5s)
  Attempting to install runtime toolset 'dotnet/x86 v10.0.0-alpha.1.24467.15' from public location.             (15.6s)
dotnet-install: Remote file https://dotnetbuilds.azureedge.net/public/Runtime/10.0.0-alpha.1.24467.15/dotnet-runtime-10.0.0-alpha.1.24467.15-win-x86.zip size is 31103373 bytes.                                                        (15.7s)
dotnet-install: Downloaded file https://dotnetbuilds.azureedge.net/public/Runtime/10.0.0-alpha.1.24467.15/dotnet-runtime-10.0.0-alpha.1.24467.15-win-x86.zip size is 31103373 bytes.
dotnet-install: The remote and local file sizes are equal.
dotnet-install: Extracting the archive.                                                                         (17.1s)
dotnet-install: Adding to current process PATH: "C:\Users\rlander\git\winforms\.dotnet\x86\". Note: This change will not be visible if PowerShell was run as a child process.
dotnet-install: Note that the script does not resolve dependencies during installation.                         (17.2s)
dotnet-install: To check the list of dependencies, go to https://learn.microsoft.com/dotnet/core/install/windows#dependencies                                                                                                           (17.2s)
dotnet-install: Installed version is 10.0.0-alpha.1.24467.15
Restore complete (17.4s)

Build failed in 618.8s
Build failed with exit code 1. Check errors above.
See log: C:\Users\rlander\git\winforms\artifacts\log\Debug\Build.binlog

C:\Users\rlander\git\winforms>build.cmd
Variable NativeToolsOnMachine detected, enabling native tool path promotion...
Processing C:\Users\rlander\git\winforms\global.json
Failed to load the dll from [C:\Users\rlander\git\winforms\.dotnet\host\fxr\10.0.0-alpha.1.24467.15\hostfxr.dll], HRESULT: 0x800700C1
The library hostfxr.dll was found, but loading it from C:\Users\rlander\git\winforms\.dotnet\host\fxr\10.0.0-alpha.1.24467.15\hostfxr.dll failed
  - Installing .NET prerequisites might help resolve this problem.
     https://go.microsoft.com/fwlink/?linkid=798306
Build failed with exit code -2147450750. Check errors above.
See log: C:\Users\rlander\git\winforms\artifacts\log\Debug\Build.binlog
Zheng-Li01 commented 20 hours ago

Also get the error when executing the Restore.cmd on the Arm machine. image

richlander commented 12 hours ago

I also saw that. It appears to be for the same reason.