https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115493
--- Comment #5 from Christophe Lyon <clyon at gcc dot gnu.org> --- That's because such a configuration builds libs for A-profile (cortex-A*), which are incompatible with M-profile (cortex-M*). (In addition I think you have to use gnueabihf instead of gnueabi, IIRC --with-float=hard is not sufficient). You can't build an arm-linux-* toolchain for cortex-M. So I suggest you build your toolchain with the flags I suggested in the description: with GCC configured with: --disable-multilib --with-mode=thumb --with-arch=armv8.1-m.main+mve.fp+fp.dp --with-float=hard --target=arm-eabi It shouldn't be very long since multilibs are disabled. Alternatively, you can try to use our ABE build script: git clone https://git.linaro.org/toolchain/abe.git cd abe ./configure ./abe.sh --build all --target arm-eabi --extraconfigdir config/master --disable make_docs --set languages=c,c++,lto --set gcc_override_configure=--disable-multilib --set gcc_override_configure=--with-mode=thumb --set gcc_override_configure=--with-arch=armv8.1-m.main+mve.fp+fp.dp --set gcc_override_configure=--with-float=hard --check gcc --set 'target_board_options={-mthumb/-march=armv8.1-m.main+mve.fp+fp.dp/-mtune=cortex-m55/-mfloat-abi=hard/-mfpu=auto}' --qemu-cpu cortex-m55 --set runtestflags=execute.exp=pr94734.c That will clone all repos (binutils-gdb, gcc, newlib, qemu), build the full toolchain from scratch, and run the test.