1: 开发平台:linux(红帽企业版6.3)
2: 开发工具:
- 交叉工具链
- makefile
- 链接器脚本
- eclipse集成开发环境
为什么要用到交叉工具?因为我们在开发arm应用程序时,产生的目标代码是要运行在arm指令架构的cpu/mcu上的,但是我们的开发工具大多数是运行在基于x86的平台上的,这个时候如果我们的开发工具依然按照x86的结构去进行代码的编译、链接、转换的话,那最终的二进制代码是无法运行在我们的arm平台上的。
所以就需要有这样一套工具,它能支持在x86平台上运行,同时生产的代码能在arm平台上运行。这就是我们的arm交叉工具。
所谓的“链”,是指交叉工具是一个集合,常用的交叉工具有:交叉编译器、交叉链接器、交叉转换器、交叉ELF文件工具、交叉反汇编器。
linux平台下支持arm开发的交叉工具有:arm-linux-gcc;arm-linux-ld;arm-linux-objcopy;arm-linux-readelf;arm-linux-objdump.
4: 关于makefile
使得程序调试更简便且严谨,方便是指每次调试时只需运行 “make”;严谨是指能保证每次的编译、链接等规则都会是一样的。
5: 关于链接器脚本
规定我们的.data(初始化的变量)、.bss(未初始化的变量)、.text(代码段)等各段在内存中的起始/结束地址、对齐方式等。
6: 关于eclipse集成开发环境
方便找出我们代码的错误、bug等;同时可以利用此工具进行在线调试
以上是关于最近学习的一些小结,疏漏之处还请大家多多指教~