Hacker News new | past | comments | ask | show | jobs | submit login

I use ARM64 Docker on my Raspberry Pi 4s, it’s excellent and loads of images are already available.



But for instance emulating an ARM raspberry on a fairly powerful i7 through qemu is... an exercice in patience to say the least, from my experience compiling the same codebase on the host system and the emulated Pi, it is almost 10x slower. So I'm not holding out on ARM having powerful x86 emulation.


Use qemu user mode with a chroot, it's much faster.


I'm using https://github.com/multiarch/qemu-user-static - that's what it is, right ?


Yes, indeed.

But instead of docker, just deboostrap the amd64 release under a directory, copy qemu-amd64 to $DIR/usr/bin and chroot into that directory. Docker is a bit of a mess.

Before chrooting, bind-mount:

/dev to $DIR/dev

/proc to $DIR/proc

/dev/pts to $DIR/pts

/sys to $DIR/dev

/home to $DIR/home

copy /etc/resolv.conf to $DIR/etc/resolv.conf

Then chroot and login (su -l yourusername). That way you could try running a lot of software.


okay, will try to see what that gives. I'm curious as to why it would be slower (when taking into account that an equivalent docker container, say running debian stable, but with the same architecture as the host, runs in more-or-less the same time as building directly with my host's GCC)


>ut with the same architecture as the host

debootstrap an ARM rootfs, please.


Yeah but that's Linux. Docker works excellent on Linux distros


Yep - I make no claims as to how well Docker works on an ARM Mac.




Consider applying for YC's Spring batch! Applications are open till Feb 11.

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: