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 $^ -lgcc -L /usr/lib/gcc/arm-none-eabi/6.3.1   -o $(your).elf -Map=bin.map

-Tyour.lds 指你的lds文件为your.lds。

$^ 指所有依赖的*.o

-lgcc 指libgcc.a库,会自动展全。

-L /usr/lib/gcc/arm-none-eabi/6.3.1 指库的位置。

-Map=bin.map 指生成bin.map文件。
 

注意, -lgcc -L /usr/lib/gcc/arm-none-eabi/6.3.1要放到“$^”后面  与 “-o” 前面。

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值