[求助]编译生成文件过大,如何优化?

2020-02-20 20:27发布

各位好

K60的工程转K64工程,工程编译报错:region `rom' overflowed by 4944 bytes。

K60板子,调试接口:OSBDM/OSJTAG,下载程序:.afx文件。
K64板子,调试接口:OpenSDA,          下载程序:.elf文件。

经验证,相同的工程:
Codewarrior10.5 编译后生成文件是.afx文件,文件大小较小。
Codewarrior10.6 编译后生成文件是.elf文件,文件大小较大。
两种文件大小相差较大,修改user_config.h效果不佳。

想问一下:
1. afx和elf分别是什么格式文件?
2. K64板子,OpenSDA接口能不能下载.afx文件?如果可以,CW10.6怎么能生成.afx文件?

请各位大神指点。
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
49条回答
ly830102624
2020-02-21 23:35
mfketggo111 发表于 2014-12-10 15:01
1)首先从你的代码部分优化,有些重复的函数是否能合并,是否可以把一些常数设置为const类型
2)修改编译器 ...

代码优化,这一块的确需要继续努力,我对自己编写的代码有而不是很满意,回头会去优化优化。

修改编译器优化等级,因为我对CW使用还不熟练,网上CW10.x以上版本的使用教程很少,没有很详细。请问你有没有相关文档?

关于.afx和.elf文件都可以down进芯片执行,且文件大小差异很大。所以我现在想把工程编译生成.afx文件,但是不知道如何实现?你觉得我这样的想法可行吗?

一周热门 更多>