使用ARM时犯得很低级很低级的错误,有感

我是大二的学生,跟同学一起做项目。我负责的是ARM的上位机部分,这些天为了一个问题无比烦恼,最后却发现这是一个无比低级的错误,记录下来以防再犯。

 

ARM部分我了解的并不多,将ARM买来之后一直照着手册的使用说明边做边学,虽然并不熟练但成功将一个helloword程序交叉编译后在ARM上运行。此后过了几天

准备考试,没有再学习ARM,于是ARM被我搁置了一周时间。一周后,我再次交叉编译程序,却发现报如下错误:

{standard input}:Assembler messages:
{standard input}:41:Error:bad instruction 'lock'
{standard input}:42:Error:bad instruction 'decl [r2,#0]'
{standard input}:43:Error:bad instruction 'setne [fp,#-13]'

我找遍了百度谷歌也没有找到解决方法,无比着急。我分析各种可能性,软件冲突?ubuntu升级后版本问题?编译器错误?

于是我又重新搭建了虚拟机及编译环境,最终发现,我犯了个无比低级的错误,程序交叉编译的方法本身就错误了,我只想着曾经编译通过,就没有再考虑是否本身交叉

编译方法有错,盲目的将最应该先考虑的可能性排除。将交叉编译过程改正,果然如同一开始一样很顺利。为了解决一个低级失误,浪费了我一周多的时间,不过这个时间不能白白浪费,此次收获如下:

1、不熟悉的过程要多次练习,例如第二次搭建虚拟机及编译环境时明显感到熟练了许多,并且找到了许多第一遍看视频学习时疏忽的地方。

2、万事皆有可能,不要想当然。

3、编写程序时多留备份,防止编写错误时不易恢复。

4、自己掌握不熟练的步骤记录下来,并多总结,不爱总结是我一大的缺点,导致我这次吃亏严重!

评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值