-
Notifications
You must be signed in to change notification settings - Fork 4.7k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
wasm-tools
workload isn't supported on arm64
version of Docker
#75613
Comments
We don't have full arm64 support for workload yet. Especially around some of the external tools that some workloads carry. We are looking at potentially aliasing some packs against the x64 content and letting those run under emulation for native arm64 sdk installs. |
I couldn't figure out the best area label to add to this issue. If you have write-permissions please help me learn by adding exactly one area label. |
@lewing do you know the timeframe for adding arm64 support for wasm-tools? |
Tagging subscribers to 'arch-wasm': @lewing Issue DetailsDescribe the bug
Default SDK image resolves to Switching to 7.0 SDK preview doesn't help either. What made it really confusing is that installation of So I'm not quite sure if that's indeed a bug, expected behavior for default SDK image on To ReproduceUse the following FROM mcr.microsoft.com/dotnet/sdk:6.0 AS build
RUN dotnet workload install wasm-tools Exceptions (if any)
Further technical details
|
I see this was added to the .net 8 milestone. Just curious if there are any workarounds for getting this workload installed on arm64 linux until .net 8 is out of preview. Any recommendations? My server is an arm64 AWS Linux 2022 instance, which is, essentially, a custom Fedora distro. Currently, if I want to publish blazor with AOT, I need to do it on my Windows machine and copy the contents up to my Linux server to host the AOT build. Not the worst workflow, but not my preference, either. Thanks! |
@directhex do you have any tips? |
That's expected at this point, we don't have a Linux ARM64 workload https://github.com/dotnet/runtime/blob/main/src/mono/nuget/Microsoft.NET.Workload.Mono.Toolchain.Current.Manifest/WorkloadManifest.json.in#L15 Right now, our EMSDK "builds" are just packaging up x64 upstream binaries in nupkgs - and Docker wouldn't typically allow running x64 binaries on arm64 images on arm64 out of the box (the way Windows and macOS do). Yes, that includes our win-arm64 and osx-arm64 workloads - the stuff we build is native ARM64 now, but we're just shipping x64 EMSDK. There is a project to do in-house builds of EMSDK, from our ARM64 team, and they've pretty much finished their research and proposed build system changes - I just haven't had the time to consume those yet (I'm working on the same build-it-in-house approach for WASI, which will explicitly support ARM64 from day one). Definitely planned, and in progress, but not ready yet, even in nightlies. Watch this space. |
This issue isn't forgotten. The PR for adding native arm64 packages (Linux, Mac, Windows) should go up within a week, hopefully merged by the end of next week. I just got my first native linux-arm64 package built |
Describe the bug
wasm-tools
workload cannot be installed using default SDK base image onarm64
version of Docker.Default SDK image resolves to
debian.11-arm64
runtime here. Current workaround is to forceamd64
base image on M1 Mac, e.g. usemcr.microsoft.com/dotnet/sdk:6.0-bullseye-slim-amd64
as base which isn't ideal.Switching to 7.0 SDK preview doesn't help either.
What made it really confusing is that installation of
wasm-tools
on M1 Mac host works just fine. And subsequentdotnet publish
of Blazor wasm project with AOT compilation enabled completes successfully.So I'm not quite sure if that's indeed a bug, expected behavior for default SDK image on
arm64
or something that's going to be resolved soon?To Reproduce
Use the following
Dockerfile
Exceptions (if any)
Further technical details
dotnet --info
from inside Docker build contextThe text was updated successfully, but these errors were encountered: