相关问题:
一、undefined reference to `_exit
warning: _close is not implemented and will always fail
一、环境:
wsl ubuntu18 22都出现相同错误,arm-none-eabi-gcc
二、完整错误:
/usr/lib/gcc/arm-none-eabi/6.3.1/../../../arm-none-eabi/lib/libc.a(lib_a-exit.o): In function `exit':
/build/newlib-jo3xW1/newlib-2.4.0.20160527/build/arm-none-eabi/newlib/libc/stdlib/../../../../../newlib/libc/stdlib/exit.c:70: undefined reference to `_exit
三、解决:
加链接库 -lnosys
$(CC)gcc -o $(patsubst %.bin, %.elf, $(target)) $^ $(LIBINC) -lnosys
四、关于libnosys.a,随便找了篇介绍如下:
libnosys是什么鬼
libgloss目录下除了和处理器相关的子目录外,还有个很特别的子目录,那就是libnosys目录,这个目录下的源文件重新定义了libgloss的所有函数,但是所有函数都是空的,例如对照一下libgloss/write.c和libgloss/libnosys/write.c这两个文件。