aeabi专题

undefined reference to `__aeabi_uidiv‘

环境: arm-none-eabi-gcc 出现此错误的代码如下: int func_a(uint32_t param, uint32_t div){   return param / div; } 被除数/除数=商 如果除数为常数,不会出错。如果是一个变量,则需要调用除法。位于libgcc.a中。需要在编译时加上如下命令: arm-none-eabi-ld  -Tyour.lds

ARMCLANG: L6218E: Undefined Symbol __aeabi_assert

这个报错一般常见于在keil中开启了microlib的情况,参考资料来自ARM官网的说明 : https://developer.arm.com/documentation/ka004216/latest 文中描述的解决解决方法有三个思路: 不用 microlib。但是重定向的 printf 就需要自己写更多代码才能实现了。不需要使用 assert() 函数,在编译选项中增加 “NDEBUG

undefined reference to '__aeabi_unwind_cpp_pr1'

本文参考自: 原文地址 写好一个程序文件,在Linux下编译,错误提示 解决方法: 在makefile中加上 -nostdlib 改正之后再次编译;OK通过。