-
Notifications
You must be signed in to change notification settings - Fork 4.8k
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
Reconsider .Net 7 build environment to support mainstream Arm64 distros #76195
Comments
Tagging subscribers to this area: @dotnet/area-meta Issue DetailsAdvocating for the .NET Foundation to support mainstream Arm64 distributions and compiling with glibc 2.26 instead of glibc 2.27 for .Net 7. .Net, an open source and cross-platform developer platform, should properly support the major cloud providers, including AWS. .Net developers have been able to run .Net applications on AWS since the origins of EC2. To not support .Net 7 on AWS is removing the ability of the development community to have choice. AWS first launched Arm64 cloud instances in November of 2018. The .NET Foundation is an independent organization to foster open development and collaboration around the .NET ecosystem. In the thread #75622 it was stated that Ubuntu 18 was chosen as "Ubuntu 18 is the oldest mainstream supported distribution that works on Arm64". Amazon Linux 2 is an LTS distribution leveraged heavily across AWS and in managed services such as AWS Lambda. Amazon Linux 2 LTS will be maintained until June 30, 2023. Amazon Linux 2 ships with kernel 4.1.4 and glibc 2.26. Asking for community discussion to support Amazon Linux 2, as it does meet the minimum kernel requirements and has broad adoption in the development community.
|
@richlander can you get this routed? |
I've been doing some research into this, and I'm not sure there is a suitable mainstream linux distro for the .NET team to compile against that would solve this immediate issue, unless you have something in mind @AdamTylerLynch Using the distrowatch distro info tables, all mainstream linux distros that are based on linux kernel 4.14 or higher all have 2.27 of glibc or higher. This includes Fedora which Amazon Linux 2 is based on. I would suggest AWS re-evaluate the option of providing an update of AL2 with a newer version of glibc as requested here, or pressing on with the AL2022 rollout. Another option (for the Lambda dotnet runtime) is to offer STS versions of .NET Lambdas, and to compile the runtime on AL2. (Disclaimer: I'm an AWS customer that wants this, but also a Microsoft MVP, so have allegences on both sides, if that matters to anyone 😄 ) |
We already have a conversation going on #75622, as you note. That’s where we should continue the technical conversation. I’ve also posted there. We’re very late in the .NET 7 release and don’t want to take what is a significant build system change. In fact, we don’t have a straightforward plan to achieving that, for the reasons that @slang25 states. There is more in the other issue on that. We recommend that Amazon guide .NET users to target .NET 6 if they want to run on Arm64 machines within the AWS environment. For folks that want to use .NET 7, the x64 build should work fine on Amazon Linux. The .NET Foundation doesn’t define project plans or technical details for member projects. Also, the choices we are making are pretty reasonable. Ubuntu 18.04 is already 4+ years old. I also want to note that we documented our minimum glibc versions some months ago, for both x64 and Arm64. We’ve very much tried to be a good steward for the community by offering accurate and timely release notes that are published in a central location. It is indeed unfortunate that there is this low-level incompatibility and that it was discovered late in our release. Let’s work together on a better solution for .NET 8 so that we won’t run into this challenge again. I’ve got a basic proposal for that at #75622. |
We will use #69361 for further discussion on this topic. |
Advocating for the .NET Foundation to support mainstream Arm64 distributions and compiling with glibc 2.26 instead of glibc 2.27 for .Net 7.
.Net, an open source and cross-platform developer platform, should properly support the major cloud providers, including AWS. .Net developers have been able to run .Net applications on AWS since the origins of EC2. To not support .Net 7 on AWS is removing the ability of the development community to have choice. AWS first launched Arm64 cloud instances in November of 2018.
The .NET Foundation is an independent organization to foster open development and collaboration around the .NET ecosystem.
In the thread #75622 it was stated that Ubuntu 18 was chosen as "Ubuntu 18 is the oldest mainstream supported distribution that works on Arm64".
Amazon Linux 2 is an LTS distribution leveraged heavily across AWS and in managed services such as AWS Lambda. Amazon Linux 2 LTS will be maintained until June 30, 2023. Amazon Linux 2 ships with kernel 4.1.4 and glibc 2.26.
Asking for community discussion to support Amazon Linux 2, as it does meet the minimum kernel requirements and has broad adoption in the development community.
The text was updated successfully, but these errors were encountered: