-
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 Toolchain Support for ARM64 #80955
WASM Toolchain Support for ARM64 #80955
Conversation
Note regarding the This serves as a reminder for when your PR is modifying a ref *.cs file and adding/modifying public APIs, to please make sure the API implementation in the src *.cs file is documented with triple slash comments, so the PR reviewers can sign off that change. |
Tagging subscribers to this area: @dotnet/area-system-reflection-metadata Issue DetailsCurrently, the WASM toolchains do not support linux arm64 (aarch64), so I decided to implement this. Why is this happening? ┌──([redacted]@remote)-[~/dotnet-dev/runtime]
└─$ sudo dotnet workload install wasm-tools
Welcome to .NET 7.0!
---------------------
SDK Version: 7.0.102
Telemetry
---------
The .NET tools collect usage data in order to help us improve your experience. It is collected by Microsoft and shared with the community. You can opt-out of telemetry by setting the DOTNET_CLI_TELEMETRY_OPTOUT environment variable to '1' or 'true' using your favorite shell.
Read more about .NET CLI Tools telemetry: https://aka.ms/dotnet-cli-telemetry
----------------
Installed an ASP.NET Core HTTPS development certificate.
To trust the certificate run 'dotnet dev-certs https --trust' (Windows and macOS only).
Learn about HTTPS: https://aka.ms/dotnet-https
----------------
Write your first app: https://aka.ms/dotnet-hello-world
Find out what's new: https://aka.ms/dotnet-whats-new
Explore documentation: https://aka.ms/dotnet-docs
Report issues and find source on GitHub: https://github.com/dotnet/core
Use 'dotnet --help' to see available commands or visit: https://aka.ms/dotnet-cli
--------------------------------------------------------------------------------------
Workload ID wasm-tools isn't supported on this platform.
┌──([redacted]@remote)-[~/dotnet-dev/runtime]
└─$ This also doesn't work with other WASM toolchains. My goal is to allow this to work by implementing the libraries and configurations. [x] Begin the patch.
|
Tagging subscribers to 'arch-wasm': @lewing Issue DetailsCurrently, the WASM toolchains do not support linux arm64 (aarch64), so I decided to implement this. Why is this happening? ┌──([redacted]@remote)-[~/dotnet-dev/runtime]
└─$ sudo dotnet workload install wasm-tools
Welcome to .NET 7.0!
---------------------
SDK Version: 7.0.102
Telemetry
---------
The .NET tools collect usage data in order to help us improve your experience. It is collected by Microsoft and shared with the community. You can opt-out of telemetry by setting the DOTNET_CLI_TELEMETRY_OPTOUT environment variable to '1' or 'true' using your favorite shell.
Read more about .NET CLI Tools telemetry: https://aka.ms/dotnet-cli-telemetry
----------------
Installed an ASP.NET Core HTTPS development certificate.
To trust the certificate run 'dotnet dev-certs https --trust' (Windows and macOS only).
Learn about HTTPS: https://aka.ms/dotnet-https
----------------
Write your first app: https://aka.ms/dotnet-hello-world
Find out what's new: https://aka.ms/dotnet-whats-new
Explore documentation: https://aka.ms/dotnet-docs
Report issues and find source on GitHub: https://github.com/dotnet/core
Use 'dotnet --help' to see available commands or visit: https://aka.ms/dotnet-cli
--------------------------------------------------------------------------------------
Workload ID wasm-tools isn't supported on this platform.
┌──([redacted]@remote)-[~/dotnet-dev/runtime]
└─$ This also doesn't work with other WASM toolchains. My goal is to allow this to work by implementing the libraries and configurations.
|
@lewing (I chose you because it said it pinged you for this PR) Would it be possible to tell the pipeline check to run the |
It's better to target main branch for the work from the start |
Alright, sorry, I just did this because I originally worked from the |
@RedstoneWizard08 sorry I thought I had replied to this but I must have not actually finished my comment. Thank you for starting the work, as @marek-safar mentioned the right place to do this is in main and it should actually be easier to do there. @directhex has already created a osx-arm64 build there and I believe mentioned that linux-arm64 would not be difficult to add as well (I'll let him follow up). To enable the full set of tooling we will also need to create arm64 workload packages in |
@lewing I am very interested on working on this, and I do know that emscripten and the emsdk are very easy to set up on arm64 linux (I've done it many times), so I don't think it will be very hard. |
This is still marked as |
I'm retargeting this PR to the new Repo maintainers will now be allowed to merge their own servicing PR as long as it meets the requirements:
The new process is described here: runtime/docs/project/library-servicing.md. The infra team will be actively monitoring servicing PRs to ensure all requirements are met and to help with any issues. Let me know if you have any questions. |
Draft Pull Request was automatically closed for 30 days of inactivity. Please let us know if you'd like to reopen it. |
Currently, the WASM toolchains do not support linux arm64 (aarch64), so I decided to implement this.
This is WIP! Please don't merge until I'm done!
Why is this happening?
If I try running
sudo dotnet workload install wasm-tools
, this happens:This also doesn't work with other WASM toolchains. My goal is to allow this to work by implementing the libraries and configurations.