[技术问答] 2.0版Coide和旧版1.7.8编译出的固件大小差异巨大

[复制链接]
 楼主| 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文件大小不同
w2nme1ai7 发表于 2024-4-27 17:12 | 显示全部楼层
其实你可以尝试调整链接器设置,例如调整内存布局、段的分配等,以减小生成的bin文件大小
tax2r6c 发表于 2024-4-27 18:17 | 显示全部楼层
建议查看新版本编译器的发布说明或变更日志,了解新版本与旧版本相比的变化,可能会有一些特定的变化导致了bin文件大小的增加
b5z1giu 发表于 2024-4-27 19:24 | 显示全部楼层
如果新版本编译器无法满足你的需求,你可以考虑继续使用旧版本编译器,直到问题得到解决或者新版本编译器发布了修复
su1yirg 发表于 2024-4-28 07:06 | 显示全部楼层
检查你的代码,尝试优化代码结构、减少不必要的代码、减小数据大小等,以减小生成的bin文件大小
ex7s4 发表于 2024-4-28 08:22 | 显示全部楼层
其实可以看看优化编译器,根据具体情况来调整编译器设置和代码优化,以减小生成的bin文件大小。
lix1yr 发表于 2024-4-28 10:13 | 显示全部楼层
Bin大小无所谓吧,一般来说
liu96jp 发表于 2024-4-28 11:20 | 显示全部楼层
可以考虑向编译器厂商或社区寻求帮助,了解更多关于编译器版本升级后导致bin文件大小增加的原因和解决方法
Undshing 发表于 2024-4-28 14:43 来自手机 | 显示全部楼层
优化等级不同吗
Henryko 发表于 2024-5-8 21:35 | 显示全部楼层
是不是编译器优化等级不同啊
您需要登录后才可以回帖 登录 | 注册

本版积分规则

824

主题

4298

帖子

1

粉丝
快速回复 在线客服 返回列表 返回顶部

824

主题

4298

帖子

1

粉丝
快速回复 在线客服 返回列表 返回顶部