为什么IAR4.42和IAR5.20不兼容,在IAR4.42下的工程,不能用IAR5.20打开?
"4.42和5.xx的最大区别在于目标文件格式不同。4.42里面,compiler和linker的输出文件都是UBROF格式,这是IAR的私有文件格式。5.xx里面,compiler和linker的输出文件都是标准的elf/dwarf格式,而且遵循ARM提出的ABI标准(application binary interface),这意味着使用GCC或Realview生成的代码库(也是elf格式)可以直接被IAR所链接使用,反之亦然,从而带来更大的便利。对使用者来说,主要可见的区别是因为linker的变化所导致的linker configuration file格式的变化,4.42里是xcl文件,5.xx里是icf文件。这两种文件都是用于告诉linker,代码和数据在存储器中如何分布,但格式有所不同。具体可参考5.11自带的文档:EWARM_MigrationGuide.pdf。"
IAR与GCC跨编译器编程是有可能。
|