gpt4 book ai didi

gcc - exit.c :(. text+0x18):使用arm-none-eabi-gcc时对 `_exit'的 undefined reference

转载 作者:行者123 更新时间:2023-12-03 06:44:12 46 4
gpt4 key购买 nike

我是微 Controller 领域的新手。我需要移植一个正在为AVR微 Controller 编译程序的IDE来为ARM微 Controller 编译程序。我刚刚将编译器从 AVR 替换为 ARM,并按照某人的说法添加了一些选项。命令如下:

\ARM-GCC\bin\arm-none-eabi-gcc -O0 -ffunction-sections -Wall -std=gnu99 -mfloat-abi=soft 
-Wa,-adhlns="$@.lst" -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

当我执行它时,出现以下错误:

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

我可以得到一些关于这个错误是什么以及如何解决它的帮助吗?而且我也不知道命令行中的这些选项指定了什么。

最佳答案

在一台机器/架构中使用 arm-none-eabi-gcc 编译文件以将其加载到 ARM 目标机器中时,会发生这种情况。您很可能没有使用半主机,您想要重新定位。

ARM® 编译器工具链版本 4.1 表示:

Semihosting is a mechanism that enables code running on an ARM target to communicate and use the Input/Output facilities on a host computer that is running a debugger.

来自工具链的 readme.txt(位于文件夹 .../gcc-arm-none-eabi-VERSION/share/doc/gcc-arm-none-eabi 下):

** non-semihosting/retarget

If you are using retarget, linking like: $ arm-none-eabi-gcc --specs=nosys.specs $(OTHER_LINK_OPTIONS)

对我来说--specs=nosys.specs就足够了;)

关于gcc - exit.c :(. text+0x18):使用arm-none-eabi-gcc时对 `_exit'的 undefined reference ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19419782/

46 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com