


Sudo apt-get install g++-aarch64-linux-gnu libstdc++-4.8-dev-arm64-cross Sudo apt-get install g++-arm-linux-gnueabihf libstdc++-4.8-dev-armhf-cross Qemu-aarch64 -L /usr/aarch64-linux-gnu/ # or qemu-aarch64-static if you install qemu-user-static If you want to run an ARM64 binary: sudo apt-get install libc6-dev-arm64-cross gcc-aarch64-linux-gnu hello # or qemu-arm-static if you install qemu-user-static If you want a dynamically-linked executable, you've to pass the linker path too: arm-linux-gnueabihf-gcc -ohello hello.c Hello: ELF 32-bit LSB executable, ARM, version 1 (SYSV), statically linked, Int main(void) Īrm-linux-gnueabihf-gcc -static -ohello hello.c Then compile your programs in amd64 directly: cat > hello.c Sudo apt-get install gcc-arm-linux-gnueabihf libc6-dev-armhf-cross qemu-user-static If there's no qemu-arm-static in the package list, install qemu-user-static instead # armel packages also exist

Then install qemu-arm-static so that you can run ARM executables directly on linux Running ARM programs under linux (without starting QEMU VM!)įirst, cross-compile user programs with GCC-ARM toolchain. If the below is too much, you can try Ubuntu-ARMv7-Qemu but note it contains non-free blobs. You might want to read this to get an introduction to armel vs armhf.
