-
Notifications
You must be signed in to change notification settings - Fork 437
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
Release for aarch64 #3112
Comments
This may help (Raspberry PI 4 (linux-arm/linux-arm64) |
@michaelpeng36 Pinging to increase priority on this if possible. It is closely related to #2834 because anyone attempting to develop Functions in a VS Code devcontainer while on an M1 Mac will be blocked. |
Agree 100%. I'm in the same boat. Cannot run on a Mac M1 inside a container. |
@alecglen That's exactly what I'm attempted and failed to do 😆 . |
Hi @michaelpeng36 any update on this? |
Yeap, I had to reverse to an emulated container in x64 to have the func tools ... and it is very slow now :( |
Hey folks, sorry for missing these pings. I am no longer the primary engineer for Core Tools, so I'm not sure when this will get fixed, but I have reached out to the new owning team to get this prioritized. @khkh-ms , would you mind taking a look? |
@khkh-ms Any update on this being triaged or assigned? |
I'd really like a Linux ARM64 binary for my Chromebook. There's already support for .NET SDK's and VS Code for ARM64, they are working great Update: This worked on my Chromebook with Debian bullseye Arm64 👍 It is a lengthy process to get it it built and added to PATH if you're a Linux noob like me.
|
azure-cli on ARM64 has been supported for a long time. But yes, it'd be awesome to have also azure-func-core-tools for aarch64 |
I had a look for it and tried installing azure-cli, although it pulled a package and installed something - it didn't work sadly due to python issue. Which is what this PR seems to be all about, as well as closing of a feature request from 2018 to support arm64. |
+1 on an ask to include azure functions install for arm64... the new Linux VMs for Ubuntu 22.04 LTS on Ampere ARM chips is a price performance leader for servers. azure-cli works (after python fix), dotnet is supported very well, VSCode supported well... just need Azure functions! |
Another voice here. Using dev containers on M1/M2 Mac fails because there's no Linux ARM support for Core Tools. |
It's been about 7 months since this issue was opened. Is there any movement / progress on azure function core tools adding support for aarch64? |
Also running into the same issue,
|
May I know, when are you planning to release it for Linux |
Yes why is it years before we get this basic capability, especially when the M1/M2 macs are commonly used for software development? It's not just this, MS has also not provided the capability to emulate Cosmos DB on arm64 processors, forcing developers to use cloud Cosmos for devlopment -- a very costly path. It seems MS has deprioritized Mac with Apple Silicon all around. |
I've just built the binaries myself, you can try from here: Otherwise you can build it yourself as well but dotnet release -r linux-arm64 Next, you can use the azure function dotnet docker images: |
@mohsinonxrm, can you point me to a repo that has the |
Now that #915 is closed as "support for ARM 64 is now released", may we please have an update on when Linux arm64 support will also land? As per @lucasfijen in Azure/azure-functions-python-worker#915 (comment), |
It's now 2024, and this issue is still open, and is causing a real headaches for our devs using Apple silicon. @khkh-ms Can we please get an update on this? |
My workaround for this is emulating ENV DOTNET_EnableWriteXorExecute=0 Turning off this environment variable (I think) turns off some sort of memory optimization and allows me to restore my dotnet projects and boot up the azure functions core tools. |
|
I just ran into this. Installed the tool via npm and got a rosetta error then I checked the actual code on npm and saw they do not support Linux aarch64. |
I can reproduce the same rosetta error on a M3 Mac. |
It's been about a year and half since this issue was opened. Is there any way we can get an update on if/when there'll be a release for aarch64? |
any ETA on this ? |
Same here would appreciate an ETA on this. |
There's a pull request, #3584, that references this issue. It's been open for 2 months without anybody reviewing it. I suggest we bug people on that thread as well :) |
We ended up making our own image for the Dev Container and building the PR's branch instead of using the official binaries. Seems to work fine so far. |
Same here - I have to somehow get the FROM node:18-bullseye
# Install azure function core tools using the workaround
RUN curl -L https://github.com/mohsinonxrm/azure-functions-core-tools/releases/download/4.23_arm64/Azure.Functions.Cli.linux-ARM64.zip -o azure-functions-cli.zip \
&& unzip azure-functions-cli.zip -d /opt/ \
&& mv /opt/Azure.Functions.Cli.linux-ARM64 /opt/azure-functions-cli \
&& ln -s /opt/azure-functions-cli/func /usr/local/bin/func \
&& chmod +x /opt/azure-functions-cli/func \
&& rm -f azure-functions-cli.zip |
We have had a little success forcing our devcontainers to be amd64
|
I was able to run a node project this way on an M3 mac in devcontainers. |
This does work somewhat, but it is SUPER SLOW. I wasn't able to install any VS Extensions for Python and Azure Functions to actually debug and work work with the code. The install would go on and on forever... (really slow) |
Can confirm exactly this, PyLance hangs in while installing and it is extremely slow. |
Has anyone getting this to work? I also followed this part here: Support running on M1 Macs then start func fails here: ImportError: cannot import name _observability,ImportError: cannot import name _observability,ImportError: cannot import name _observability. No resolution so far, pip install cygrpc as suggested, failed with a missing header file or so, my platform is linux/arm64, Python 3.11 on Mac M1, having a proper build for this platform would really help. |
@michaelpeng36 what's the current status of this? Anyone using devcontainer on modern Macs is blocked by this. |
also, it will be blocked on upcoming Snapdragon x powered PCs. |
@juergstaub The detailed error from my side shows that it happened inside this file
|
Causing problems for us too. Stops one of our devs on OSX from running our container. |
2 years later, still an issue. |
it's clear, no matter what they say at this point, it's not a priority, or heck even a want, for them. |
Hi everyone, thank you so much for your feedback and patience. We are looking into this issue and will provide an update soon. |
@juergstaub I got it working. You can have a look at a full example here. However, the important parts are the following:
FROM mcr.microsoft.com/dotnet/sdk:8.0 as azure-functions-core-tools
# Dotnet caching - see: https://github.com/dotnet/dotnet-docker/issues/3353#issuecomment-996013919
RUN --mount=type=cache,id=nuget,target=/root/.nuget/packages \
git clone https://github.com/amih90/azure-functions-core-tools.git /tmp/azure-functions-core-tools
WORKDIR /tmp/azure-functions-core-tools
# RUN git checkout amih90/linux-arm64 \
RUN git checkout b7cb908431f6aed5b509e32fc1e56a740b6eee02 \
&& dotnet publish src/Azure.Functions.Cli/Azure.Functions.Cli.csproj --runtime linux-arm64 --output /opt/azure-functions-core-tools
FROM node:18-bookworm as final
[...]
RUN ln -s /opt/azure-functions-core-tools/func /usr/local/bin/func \
&& chmod +x /opt/azure-functions-core-tools/func \
&& rm -f azure-functions-cli.zip
[...] |
with the new push for aarch64 on windows or WOA and with the new load of copilot pcs and zenbooks and whatnot that has windows on arm64 architecture. There is a push for more support for that WOA platform. So for the time being I came to the conclusion that using WSL on my machine to be able to develop the most freely was needed sometimes, also since arm64 distros for linux have been long supported for various projects. But the issue i am now running into is that azure-functions-core-tools doesnt seem to work on this setup? $ sudo npm -g update azure-functions-core-tools
$ func
qemu-x86_64: Could not open '/lib64/ld-linux-x86-64.so.2': No such file or directory and the ubuntu version doesnt have a arm64 option, only amd64? Or is best way to build it myself like mentioned in this thread. |
At the moment there is a release for Linux amd64 & Mac arm64 but not Linux aarch64.
Can you please make a release of the tools available for aarch64 or provide build instructions.
Thanks
The text was updated successfully, but these errors were encountered: