Я пытаюсь создать приложение для ARMv6, но, не удается.построить для ARMv6 с gnueabihf
Я думаю, что проблема заключается в Toolchain, который поддерживает Hard Float, но ARMv6 этого не делает.
Ну, сначала я установил -march = armv6, где компиляция не удалась.
/opt/gcc-linaro-arm-linux-gnueabihf-4.8-2014.03_linux/arm-linux-gnueabihf/libc/usr/include/bits/byteswap.h: In function ‘__bswap_32’: /opt/gcc-linaro-arm-linux-gnueabihf-4.8-2014.03_linux/arm-linux-gnueabihf/libc/usr/include/bits/byteswap.h:45:1: sorry, unimplemented: Thumb-1 hard-float VFP ABI
Кроме того, я установил -mfloat-аби = мягкая которые делают компоновщика жалуются:
/opt/gcc-linaro-arm-linux-gnueabihf-4.8-2014.03_linux/bin/../lib/gcc/arm-linux-gnueabihf/4.8.3/../../../../arm-linux-gnueabihf/bin/ld: error: prog uses VFP register arguments, prog.o does not /opt/gcc-linaro-arm-linux-gnueabihf-4.8-2014.03_linux/bin/../lib/gcc/arm-linux-gnueabihf/4.8.3/../../../../arm-linux-gnueabihf/bin/ld: failed to merge target specific data of file prog.o
Ну, как же я на самом деле построить для ARMv6? Или есть ошибка в Toolchain?
Вы используете Linux? Linaro для Linux OS/glibc, и у вас будет проблема, если вы не скомпилируете с '-ffreestanding'. Я предлагаю вам использовать [компилятор newlib] (https://launchpad.net/gcc-arm-embedded), если вы действительно встроены. Стартовая панель имеет несколько сборок для разных хостов (включая ядро разработки Linux-хоста). В противном случае вы можете использовать тег 'embedded-linux'. –