打印
[技术问答]

2.0版Coide和旧版1.7.8编译出的固件大小差异巨大

[复制链接]
412|11
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
flycamelaaa|  楼主 | 2024-4-17 16:00 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
使用同一版本的GNU ARM编译器, 1.7.8 CoIDE编译出的bin文件大小只有7.5K, 但是2.0.bate版编译出来有17.1K.
2.0版刚开始无法编译成功, 因为我用的MCU是M052(只有8K flash), 2.0下换成M058(32K flash)才通过编译.
请问如何处理?

使用特权

评论回复
沙发
g0d5xs| | 2024-4-27 13:52 | 只看该作者
在这种情况下,你遇到了编译器版本升级后导致生成的bin文件大小增加的问题。这可能是由于编译器优化、链接器设置或其他编译器参数的变化所导致的

使用特权

评论回复
板凳
zhizia4f| | 2024-4-27 15:03 | 只看该作者
尝试在新版本的编译器中调整编译器优化选项,例如尝试关闭某些优化选项,或者调整优化级别,以尽量减小生成的bin文件大小

使用特权

评论回复
地板
y1n9an| | 2024-4-27 16:09 | 只看该作者
检查新版本的编译器是否默认使用了不同的链接器脚本或链接器设置,这可能会导致生成的bin文件大小不同

使用特权

评论回复
5
w2nme1ai7| | 2024-4-27 17:12 | 只看该作者
其实你可以尝试调整链接器设置,例如调整内存布局、段的分配等,以减小生成的bin文件大小

使用特权

评论回复
6
tax2r6c| | 2024-4-27 18:17 | 只看该作者
建议查看新版本编译器的发布说明或变更日志,了解新版本与旧版本相比的变化,可能会有一些特定的变化导致了bin文件大小的增加

使用特权

评论回复
7
b5z1giu| | 2024-4-27 19:24 | 只看该作者
如果新版本编译器无法满足你的需求,你可以考虑继续使用旧版本编译器,直到问题得到解决或者新版本编译器发布了修复

使用特权

评论回复
8
su1yirg| | 2024-4-28 07:06 | 只看该作者
检查你的代码,尝试优化代码结构、减少不必要的代码、减小数据大小等,以减小生成的bin文件大小

使用特权

评论回复
9
ex7s4| | 2024-4-28 08:22 | 只看该作者
其实可以看看优化编译器,根据具体情况来调整编译器设置和代码优化,以减小生成的bin文件大小。

使用特权

评论回复
10
lix1yr| | 2024-4-28 10:13 | 只看该作者
Bin大小无所谓吧,一般来说

使用特权

评论回复
11
liu96jp| | 2024-4-28 11:20 | 只看该作者
可以考虑向编译器厂商或社区寻求帮助,了解更多关于编译器版本升级后导致bin文件大小增加的原因和解决方法

使用特权

评论回复
12
Undshing| | 2024-4-28 14:43 | 只看该作者
优化等级不同吗

使用特权

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

本版积分规则

530

主题

1759

帖子

0

粉丝