Hi Janneke, I get gcc-mesboot.sh: line 20: 9438 Illegal instruction (core dumped) ./a.out │ 0x276b8 <__writev+32> svc 0x00000014 │ │ >0x276bc <__writev+36> mov r4, r0 │ The actual problem is at the first line above--the svc with argument != 0. #0 0x000276bc in __writev (fd=2, vector=0xbebc54c0, count=10) at ../sysdeps/unix/sysv/linux/writev.c:51 glibc 2.2.5:sysdeps/unix/sysv/linux/writev.c:51 > bytes_written = INLINE_SYSCALL (writev, 3, fd, CHECK_N (vector, count), count); Err.... hmm?! You *are* patching INLINE_SYSCALL body--so I'd guess that __ARM_EABI__ for some reason is not being defined. I'd suggest to #error (or at least #warning) if !__ARM_EABI__.