打印
[应用相关]

cross tools

[复制链接]
979|1
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
拿起书本|  楼主 | 2014-3-5 10:56 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
       朋友们认为在为新平如设计开发环境时,最先要考虑的是什么?
 相信不少朋友一定会认为是makefile和 link script了……其实这两个东西只是语法不太直觉了,其实它们的观念是很简单的。
   话说回来,开始设计开发环境的时间点应该会在项目的早期,此时很多事情 都还没有确定,很难掌握需要哪些步骤才可以做出执行文件,再加上CPU的平台通常人采用不同的开发工具,所以我认为在刚形如时最好花点时间去研究一下这些工具,看看到底提供了哪些功能,使用时有没有特殊的注意事项,这在项目后期除错或最佳化时都可能帮得上忙,我们最好心里有个底,等系统设计渐趋完成晨,再来开始写makefile也不迟。在嵌入式系统开发中,我们把编译器等工具称为cross tools,所谓的“cross"的意义就是要在PC上产生其它机器的执行文件。回想pc程序的产生流程应该为:
1:编译(compile)
2:组译(assemble;有的编译器只会产生汇编语言码,此时必须经过组译才会产生目的码——objec file);
3:寻找标准函数库;
4:链接所有需要的object file与函数库。
5:产生执行文件(.EXE)
所以cross tools应该包含:
1:cross assembler
2:cross compiler;
3:cross library
4:cross linker
还应该包含以下几点很重要的东西
一:执行文件格式转换工具。
二:执行文件dump工具:将执行文件dump出(或”转换为)汇编语言码,这个工具在开发后期的效能分析与最佳化时相当有用
三:debug library与工具:例如知名的GNU gbd,只要系统中链接了debug library,就可以通过串行端口在PC上进行远程除错。
可使用的工具可能会随平台不同瑞天差地别,所以在设计开发环境之前, 负责的同仁一定要认真详读用户手册。

沙发
jxmzzr| | 2014-3-5 20:23 | 只看该作者
既然每一个项目使用的cross compiler 都可能不一样,那如何才能知道用什么参数,产生什么格式的执行文件才是对的?

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

个人签名:好好学习,天天向上!

519

主题

4195

帖子

31

粉丝