学写嵌入式系统(一) 环境搭建

       郁闷的一天,参考《一步步写嵌入式操作系统》这本书来实现第一节环境的搭建,可事实并不是一帆风顺。早上安装Cygwin,因为校园网的问题,安了有些时间。安装完后开始配置交叉编译环境armgcc,然后按照书上一步一步做,可是爆出一大堆关于汇编的错误,网上搜了半天没找出原因。最终值得放弃这个蛋疼的cygwin,用虚拟机的Linux。然后又是一晚上,期间遇到各种问题,最终排除万难,一一解决,一天总算有点成果了。不过才开始接触linux几天,对Linux还不是很熟。闹出一点小笑话,在群里发问被鄙视了。

列出当时出现的汇编错误,如有大神看见,希望能帮助我改正。

$ arm-elf-gcc -nostdlib test.c
/tmp/ccFLe985.s: Assembler messages:
/tmp/ccFLe985.s:5: Warning: .type pseudo-op used outside of .def/.endef ignored.
/tmp/ccFLe985.s:5: Error: junk at end of line, first unrecognized character is `
m'
/tmp/ccFLe985.s:7: Error: invalid character '@' in mnemonic
/tmp/ccFLe985.s:8: Error: invalid character '@' in mnemonic
/tmp/ccFLe985.s:9: Error: invalid character '@' in mnemonic
/tmp/ccFLe985.s:10: Error: invalid char '[' beginning operand 2 `[sp'
/tmp/ccFLe985.s:11: Error: too many memory references for `add'
/tmp/ccFLe985.s:12: Error: expecting operand after ','; got nothing
/tmp/ccFLe985.s:13: Error: too many memory references for `mov'
/tmp/ccFLe985.s:14: Error: too many memory references for `add' 


下图是辛苦了一晚上的成果,不过有点小BUG,就是关于那个leeos.bin文件的问题,书上说编译的二进制文件,我不知道在哪里编译的。只是新建了个文件就叫这个leeos.bin。最后显示加载这个文件失败。希望知道的告诉我。

学写嵌入式系统(一) 环境搭建

希望学习下操作系统的可以去看看上面说到的那本书,个人感觉跟平常的那些讲操作系统的书有很大的不同。http://www.leeos.org/这是那个书的网址。

这几天忙着复习考试。下星期更是要复习。唉。。都几天没搞ARM了。明天星期天是去实验室还是图书馆复习呢。。。


还是那句话,每天都进步一点。得意

你可能感兴趣的:(linux,汇编,嵌入式,笑话,character,嵌入式操作系统)