devkitPro / docker

Dockerfiles for https://hub.docker.com/u/devkitpro/
GNU General Public License v3.0
58 stars 28 forks source link

Cross compiled images for arm64 #27

Closed webhdx closed 1 year ago

webhdx commented 1 year ago

Hello, I'm working on Apple Silicon and really like the idea of having dockerized build environment. Unfortunately your docker images are made for amd64 architecture. Mac can emulate x86 architecture with Rosetta and your images work that way but I've noticed compiling homebrew takes much more time. Would you be able to publish cross compiled arm64 builds? It shouldn't add too much overhead to your current workflow: https://dev.to/aws-builders/using-docker-buildx-to-create-cross-platform-docker-images-for-seamless-compatibility-4k8b

Best regards, Maciej

xfangfang commented 1 year ago

I also encountered a similar problem. When I tried to build my own arm/v8 image, I found that the performance was the same as using an amd64 image.

Here are the results of my testing:

Compile macOS version: 43s Cross compile switch version: 89s Compiling using arm/v8 image: 332s Compiling using amd64 image: 337s

I used the file command to confirm that all aarch64-none-elf-* are based on the aarch64 architecture, so the image itself is fine.

CPU usage is not high when using docker image to compile, now I think the problem may be on the docker in arm macOS.

WinterMute commented 1 year ago

The docker images are now arm64/amd64 multi arch. Testing seems fine on rpi4 & m1 MBA