Hallo !
Ich versuche gerade FreeRTOS auf meiner CooCox Plattform zu aktivieren.
Dabei musste ich zunächst den Compiler auf FPU=hard umstellen.
Beim Linken bekam ich dann
1 | [cc] c:/program files/arm-none-eabi-gcc-4_6/bin/../lib/gcc/arm-none-eabi/4.6.2/../../../../arm-none-eabi/bin/ld.exe: error: rtostest.elf uses VFP register arguments, c:/program files/arm-none-eabi-gcc-4_6/bin/../lib/gcc/arm-none-eabi/4.6.2/../../../../arm-none-eabi/lib/armv7e-m\libg.a(lib_a-memcmp.o) does not
|
Die Recherche ergab, dass ich (natürlich) auch mit der richtigen
C-Library linken muss. Also suchte ich im Tollchain Verzeichnis und fand
heraus, dass es funktioniert, wenn ich die Library "libc" in einem fpu
Verzeichnis verwende: C:\Program
Files\arm-none-eabi-gcc-4_6\arm-none-eabi\lib\fpu\libc.a
Frage: Da gibt es noch -zig andere Libraries, woher weiss ich nun, ob
das die richtige ist? Meine Vorgehensweise ist ja total auf trial/error
basis und das ist nicht gerade motivierend...Ich konnte auch keine
Stelle Finden, wo jemand die Verzeichnisstruktur der Gcc Toolchain
beschreibt.
Danke für hilfreiche Tipps!