I have fixed at least the initial problems on userspace arm support upstream in NetBSD. Note they are not yet in the buildrump source tree - I tried to cherrypick the fixes and it was giving me merge conflicts, so I guess it is time to do an update world. The examples below assume you have a current NetBSD source tree in ~/src.
Frankenlibc now has Linux arm userspace support (NetBSD, FreeBSD will be available shortly), which is tested natively (armv7, hardfloat) and under qemu. It also has a qemu-arm baremetal target. This is very minimal (no memory detection, fake clock, no devices) - it is not a very interesting target, other than for testing softfloat and that baremetal works, or as a basis for other ports. Instructions for Ubuntu/Debian: checkout current netbsd source tree git clone https://github.com/justincormack/frankenlibc.git cd frankenlibc Build baremetal qemu-arm and run hello world under qemu-system emulation sudo apt-get install qemu gcc-arm-none-eabi ./buildc.sh -s ~/src qemu-arm (qemu will not terminate, you need to kill it; other compilers may work but this is default and tested one) Cross build userspace and run under qemu-user emulation sudo apt-get install gcc-4.8-arm-linux-gnueabihf sudo apt-get install binfmt-support qemu-user-static export CC=arm-linux-gnueabihf-gcc-4.8 export NM=arm-linux-gnueabihf-nm export AR=arm-linux-gnueabihf-ar export OBJCOPY=arm-linux-gnueabihf-objcopy export LDSTATIC=-static ./buildc.sh -s ~/src Native build userspace on arm machine ./buildc.sh -s ~/src
