Application terminated, rc = 0x1;当运行裸机程序时出现

在运行ARM裸机程序时遇到'Application terminated, rc = 0x1'的问题。尝试将main()函数置于源代码开头或者调整Makefile中文件的编译顺序可以解决。调整后,确保正确执行入口地址,避免因编译链接顺序导致的函数类型匹配错误,从而成功运行程序。" 102962225,1081803,Python实现阿里云OSS文件上传下载操作,"['阿里云', '对象存储OSS', 'Python开发']
摘要由CSDN通过智能技术生成

fff210 # go 30008000

Starting application at 0x30008000 …

Application terminated, rc = 0x1

fff210 # OK

有些网页上的解决方法是:
uboot下跑arm裸机程序

写了main()函数,

也去了头转换了格式(arm-linux-objcopy main -O binary main.bin )

可是go的时候还是跑不起来(会出现## Starting application at 0x30000000 …

Application terminated, rc = 0x1)

原因何在?

答曰:把main()函数放到源代码开头 再编译即可运行哇

经验证此种方法可行。

还有一种方法就是,改变Makefile文件:
将主文件放前,被调用的文件放后面。
改变前:
arm-linux-ld -Ttext 30000000 -o led.elf led.o start.o
改变后:
arm-linux-ld -Ttext 30000000 -o led.elf start.o led.o
这样一样可以解决问题。
在uboot的命令行下,执行go命令,执行do_go函数,

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值