exit.c :(. text + 0x18): undefinierter Verweis auf `_exit 'bei Verwendung von arm-none-eabi-gcc
Ich bin neu auf dem Gebiet der mikrocontroller. Ich brauche zum Anschluss einer IDE die Programme kompilieren für AVR-mikrocontroller zu kompilieren Programme für ARM-mikrocontroller. Ich haben nur ersetzt der compiler von AVR auf ARM und einige Optionen Hinzugefügt, wie gesagt, von jemand.
Im folgenden ist der Befehl:
\ARM-GCC\bin\arm-none-eabi-gcc -O0 -ffunction-sections -Wall -std=gnu99 -mfloat-abi=soft
-Wa,-adhlns="[email protected]" -fmessage-length=0 -mcpu=cortex-m0 -mthumb -g3 -gdwarf-2 -Wl,
--gc-sections -o <Dir_name>\Build_Files\Blink_arm.cpp.elf <Dir_name>\Build_Files\Blink_arm.cpp.o <Dir_name>\Build_Files\core.a
-L<Dir_name>\Build_Files -lm
Wenn ich es ausführen, bekomme ich folgende Fehlermeldung:
tools/arm-gcc/bin/../lib/gcc/arm-none-eabi/4.6.2\libc.a(lib_a-exit.o): In function `exit':
exit.c:(.text+0x18): undefined reference to `_exit'
collect2: ld returned 1 exit status
Kann ich etwas Hilfe was ist das für Fehler und wie kann ich es lösen. Und auch ich weiß nicht, was diese Optionen in der Befehlszeile angeben.
InformationsquelleAutor der Frage Sharath U | 2013-10-17
Du musst angemeldet sein, um einen Kommentar abzugeben.
Geschieht dies beim kompilieren eine Datei mit
arm-none-eabi-gcc
in einer Maschine/Architektur, laden Sie es in ein ARM-target-Maschine. Wahrscheinlich sind Sie nicht verwenden semihosting, die Sie wollen, zu richten.ARM® Compiler-toolchain-Version 4.1 gibt:
Aus der toolchain ist readme.txt (unter "Ordner"
.../gcc-arm-none-eabi-VERSION/share/doc/gcc-arm-none-eabi
):Für mich
--specs=nosys.specs
war genug 😉InformationsquelleAutor der Antwort Yeke
Verwenden
--specs=nosys.specs
:Referenz:
InformationsquelleAutor der Antwort ele1000
Ich hatte das gleiche problem.
Die Lösung war wie folgt:
-ffreestanding -flto
in compiler-Aufruf-Zeile.-flto -ffreestanding -nostdlib
in linker-Aufruf-Zeile.InformationsquelleAutor der Antwort User Human