This issue is similar to Question #208418 (https://answers.launchpad.net/gcc-arm-embedded/+question/208418),
however, the proposed solution to that question doesn't work here.
I built the toolchain myself (not using the prebuilt binaries).
I'm compiling an application with g++ and I fail in the link step with the following errors:
/home/nrhinnant/toolchain/gcc-arm-none-eabi-4_7-2013q1-20130313/build-native/target-libs/lib/gcc/arm-none-eabi/4.7.3/../../../../arm-none-eabi/bin/ld: error: DMAManager.elf uses VFP register arguments, /home/nrhinnant/toolchain/gcc-arm-none-eabi-4_7-2013q1-20130313/build-native/target-libs/lib/gcc/arm-none-eabi/4.7.3/libgcc.a(unwind-arm.o) does not
/home/nrhinnant/toolchain/gcc-arm-none-eabi-4_7-2013q1-20130313/build-native/target-libs/lib/gcc/arm-none-eabi/4.7.3/../../../../arm-none-eabi/bin/ld: failed to merge target specific data of file /home/nrhinnant/toolchain/gcc-arm-none-eabi-4_7-2013q1-20130313/build-native/target-libs/lib/gcc/arm-none-eabi/4.7.3/libgcc.a(unwind-arm.o)
/home/nrhinnant/toolchain/gcc-arm-none-eabi-4_7-2013q1-20130313/build-native/target-libs/lib/gcc/arm-none-eabi/4.7.3/../../../../arm-none-eabi/bin/ld: error: DMAManager.elf uses VFP register arguments, /home/nrhinnant/toolchain/gcc-arm-none-eabi-4_7-2013q1-20130313/build-native/target-libs/lib/gcc/arm-none-eabi/4.7.3/libgcc.a(pr-support.o) does not
/home/nrhinnant/toolchain/gcc-arm-none-eabi-4_7-2013q1-20130313/build-native/target-libs/lib/gcc/arm-none-eabi/4.7.3/../../../../arm-none-eabi/bin/ld: failed to merge target specific data of file /home/nrhinnant/toolchain/gcc-arm-none-eabi-4_7-2013q1-20130313/build-native/target-libs/lib/gcc/arm-none-eabi/4.7.3/libgcc.a(pr-support.o)
/home/nrhinnant/toolchain/gcc-arm-none-eabi-4_7-2013q1-20130313/build-native/target-libs/lib/gcc/arm-none-eabi/4.7.3/../../../../arm-none-eabi/bin/ld: DISCARD has both ordered [`.ARM.exidx' in /home/nrhinnant/toolchain/gcc-arm-none-eabi-4_7-2013q1-20130313/build-native/target-libs/lib/gcc/arm-none-eabi/4.7.3/libgcc.a(unwind-arm.o)] and unordered [`.ARM.extab' in /home/nrhinnant/toolchain/gcc-arm-none-eabi-4_7-2013q1-20130313/build-native/target-libs/lib/gcc/arm-none-eabi/4.7.3/libgcc.a(unwind-arm.o)] sections
/home/nrhinnant/toolchain/gcc-arm-none-eabi-4_7-2013q1-20130313/build-native/target-libs/lib/gcc/arm-none-eabi/4.7.3/../../../../arm-none-eabi/bin/ld: final link failed: Bad value
collect2: error: ld returned 1 exit status
I compile with the following flags:
CFLAGS="-g -O0 -D USE_STDPERIPH_DRIVER -DSTM32F40XX -fomit-frame-pointer -fno-strict-aliasing -fno-dwarf2-cfi-asm -mcpu=cortex-m4 -mthumb -mhard-float -nostdlib -mfloat-abi=hard -mfpu=fpv4-sp-d16"
LINKER_FLAGS="-Xlinker -oDMAManager.elf -Xlinker -M -Xlinker -Map=DMAManager.map"
As I understand the issue, I'm not enabling hardware floating point exactly correct. Am I missing a flag,
or is the issue somewhere else?
Thank you very much for your time!