https://gcc.gnu.org/bugzilla/show_bug.cgi?id=83206
--- Comment #6 from Richard Earnshaw <rearnsha at gcc dot gnu.org> --- > /usr/local/gcc/bin/gcc -o matrix-v6 -march=native -mcpu=native -mtune=native > -mfpu=auto -O3 matrix.c > cc1: error: -mfloat-abi=hard: selected processor lacks an FPU -mcpu=... is an alias that sets both architecture and tuning, you should never need to specify all three. What happens if you just use: /usr/local/gcc/bin/gcc -o matrix-v6 -mcpu=native -mfpu=auto -O3 matrix.c > On aarch64 -mfpu=auto gives: > gcc: error: unrecognized command line option ‘-mfpu=auto’ The AArch64 compiler does not have a -mfpu option of any format, it's all part of the architecture (-march) option. I'll have another look at the native stuff, but I don't have an ARMv6 board to test with and it might not be in the next few days.