-
-
Notifications
You must be signed in to change notification settings - Fork 100
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
Add support for ARM architectures #134
Comments
Help would be very welcome with this. E.g., can someone point to other Docker images which handle this well? Where do they build the images? Do they use emulators or dedicated machines? |
Don't know if this would help: |
The base images in this project (Alpine, Ubuntu) are afaik already multi-arch. So theoretically you would only need to grab the base image and compile Pandoc in it once on an Intel-based machine (for an Intel-based image) and then again on an ARM machine (Raspberry Pi, Mac M1) for an ARM image. In https://github.com/cagix/pandoc-hugo-m1 I pulled the ARM binary (Linux) of Pandoc into an Ubuntu base image running on an Apple M1. |
I've filed a request to be accepted into Docker's open source program. That would give us access to automatic builds, which appear to work with a wide range of architectures. |
After some more research, it seems that all automatic builds on Docker Hub happen with amd64. But it seems that |
You can use this action [1] to setup QEMU in your repo with multi arch support out of the box. [1] https://github.com/docker/setup-qemu-action |
I'm doing some tests on https://github.com/cdivita/pandoc-dockerfiles:
|
Issue tracking the absence of Linux ARM64 GitHub runners: The last official update from August 17, 2022 states:
|
It looks like the root cause is that QEMU doesn't support dynamic memory allocations well (bytecodealliance/wasmtime#1895). Anyone knows whether we can disable that for the Pandoc build? |
Maybe this was obvious to others and they didn't want to run AMD containers on Mac ARM, but I didn't know I could do that, and nedlessly spent time figuring out how to build an ARM pandoc/core, before realizing I could just use "docker run --platform linux/amd64 ..." and Mac Docker Desktop uses Rosetta 2 to run the standard AMD pandoc/core just fine. The only downside I'm aware of is speed, but it was still very fast for my use case. |
Many users want to use pandoc in their ARM based machines. The most popular is Raspberry Pi, but there are many others.
It would be very useful for us to have support for ARM architectures (armv8, armv7l/armv7hl, etc.).
The text was updated successfully, but these errors were encountered: