Появилась проблема при сборке тулчейна для ARM926EJ-S с поддержкой встроенного сопроцессора для работы с ПЗ (VFP).
Собирал по шагам из http://www.gnuarm.com/support.html, с ихним t-arm-elf. Исходные данные: Linux, gcc-4.4.1, binutils-2.19, newlib-1.17.0.
Попробовал протестировать. Как указано в http://gcc.gnu.org/onlinedocs/gcc-4.4.1/gc...tml#ARM-Options, для использования аппаратной точки (в случае с сопроцессором типа VFP) нужно вписать -mfloat-abi=softfp и -mfpu=vfp, при этом линкер вываливается со словами:
Цитата
bash: arm-elf-gcc -mcpu=arm926ej-s -mfloat-abi=softfp -mfpu=vfp float_test.c -o float_test
SNIP
toolchain/arm/lib/gcc/arm-elf/4.4.1/../../../../arm-elf/bin/ld: ERROR: toolchain/arm/lib/gcc/arm-elf/4.4.1/../../../../arm-elf/lib/libc.a(lib_a-reent.o) uses FPA instructions, whereas float_test does not
toolchain/arm/lib/gcc/arm-elf/4.4.1/../../../../arm-elf/bin/ld: ERROR: toolchain/arm/lib/gcc/arm-elf/4.4.1/../../../../arm-elf/lib/libc.a(lib_a-reent.o) uses hardware FP, whereas float_test uses software FP
SNIP
toolchain/arm/lib/gcc/arm-elf/4.4.1/../../../../arm-elf/bin/ld: ERROR: toolchain/arm/lib/gcc/arm-elf/4.4.1/crtn.o uses FPA instructions, whereas float_test does not
toolchain/arm/lib/gcc/arm-elf/4.4.1/../../../../arm-elf/bin/ld: ERROR: toolchain/arm/lib/gcc/arm-elf/4.4.1/crtn.o uses hardware FP, whereas float_test uses software FP
toolchain/arm/lib/gcc/arm-elf/4.4.1/../../../../arm-elf/bin/ld: failed to merge target specific data of file toolchain/arm/lib/gcc/arm-elf/4.4.1/crtn.o
SNIP
toolchain/arm/lib/gcc/arm-elf/4.4.1/../../../../arm-elf/bin/ld: ERROR: toolchain/arm/lib/gcc/arm-elf/4.4.1/../../../../arm-elf/lib/libc.a(lib_a-reent.o) uses FPA instructions, whereas float_test does not
toolchain/arm/lib/gcc/arm-elf/4.4.1/../../../../arm-elf/bin/ld: ERROR: toolchain/arm/lib/gcc/arm-elf/4.4.1/../../../../arm-elf/lib/libc.a(lib_a-reent.o) uses hardware FP, whereas float_test uses software FP
SNIP
toolchain/arm/lib/gcc/arm-elf/4.4.1/../../../../arm-elf/bin/ld: ERROR: toolchain/arm/lib/gcc/arm-elf/4.4.1/crtn.o uses FPA instructions, whereas float_test does not
toolchain/arm/lib/gcc/arm-elf/4.4.1/../../../../arm-elf/bin/ld: ERROR: toolchain/arm/lib/gcc/arm-elf/4.4.1/crtn.o uses hardware FP, whereas float_test uses software FP
toolchain/arm/lib/gcc/arm-elf/4.4.1/../../../../arm-elf/bin/ld: failed to merge target specific data of file toolchain/arm/lib/gcc/arm-elf/4.4.1/crtn.o
Собственно вопрос: почему части тулчейна и gcc в особенности собраны только с поддержкой FPA, хотя configure gcc не принимает аргументы -mcpu, -mfloat-abi и т.д.? Проблема в multilib?
Заранее спасибо.