[技术问答] keil5在不同电脑生成的hex文件不同

[复制链接]
15913|21
 楼主| 打工小王子 发表于 2021-8-2 20:59 | 显示全部楼层 |阅读模式
keil5配置文件和版本号都是一样的,编译器也是一样的,唯一的不同是电脑系统不一样,同一个代码源,生成的hex文件不一样,,求大佬解答
caigang13 发表于 2021-8-2 21:14 来自手机 | 显示全部楼层
怎么判断不一样的?
 楼主| 打工小王子 发表于 2021-8-2 21:24 | 显示全部楼层
caigang13 发表于 2021-8-2 21:14
怎么判断不一样的?

将两台电脑生成的hex文件进行比较
 楼主| 打工小王子 发表于 2021-8-2 21:29 | 显示全部楼层
打工小王子 发表于 2021-8-2 21:24
将两台电脑生成的hex文件进行比较

我用两台电脑系统一样的(都是win7旗舰版),生成的hex文件是一样的,,用git里面可以比较文件的,,(一台电脑是win7家庭版,一台是win7旗舰版,一台是win10专业版,这三台生成的hex文件都不相同)
xyz549040622 发表于 2021-8-3 08:40 | 显示全部楼层
不一样的地方多不多?
不闲不要钱 发表于 2021-8-3 08:47 | 显示全部楼层
是不是用了__DATE__  __TIME__宏
 楼主| 打工小王子 发表于 2021-8-3 09:06 | 显示全部楼层
xyz549040622 发表于 2021-8-3 08:40
不一样的地方多不多?

特别多,,后面有一半的数据都不一样
 楼主| 打工小王子 发表于 2021-8-3 09:09 | 显示全部楼层
不闲不要钱 发表于 2021-8-3 08:47
是不是用了__DATE__  __TIME__宏

用了,但是日期和时间宏只会影响一行代码
gaobq 发表于 2021-8-3 09:53 | 显示全部楼层
有没有可能优化选型不一致
 楼主| 打工小王子 发表于 2021-8-3 10:03 | 显示全部楼层
gaobq 发表于 2021-8-3 09:53
有没有可能优化选型不一致

一样的,配置都是一样的
Prry 发表于 2021-8-3 10:49 | 显示全部楼层
源码路径不同,改为一样路径。

评论

hex不会包含路径信息,lib才会  发表于 2021-8-3 11:07
linnjing 发表于 2021-8-3 11:23 | 显示全部楼层
比较一下生成的MAP文件,看看哪有差异。
问题出在包含的库文件的可能性大一点。
有时候源码只相差一个字节,生成的代码也会有显著差异,不奇怪。
举个我遇到的例子,i=100改成i=1000,生成的代码就会差极多。
ddllxxrr 发表于 2021-8-3 12:36 | 显示全部楼层
有这种可能,但不可能影响程序的流程
 楼主| 打工小王子 发表于 2021-8-3 13:23 | 显示全部楼层
linnjing 发表于 2021-8-3 11:23
比较一下生成的MAP文件,看看哪有差异。
问题出在包含的库文件的可能性大一点。
有时候源码只相差一个字节 ...

MAP文件差异也很大
 楼主| 打工小王子 发表于 2021-8-3 16:26 | 显示全部楼层
问题已解决,谢谢各位啦
m564522634 发表于 2021-8-3 17:17 | 显示全部楼层
打工小王子 发表于 2021-8-3 16:26
问题已解决,谢谢各位啦

别找电脑的原因,找下你自己配置的软件编译配置上有什么区别吧,在看下系统的调用库一不一样,看下编译器一样的,keil 支持 ac5 ac6 gcc  编译器 你自己看下
JasonLee27 发表于 2021-8-6 17:04 | 显示全部楼层
打工小王子 发表于 2021-8-3 16:26
问题已解决,谢谢各位啦

啥原因啊

评论

我也很好奇,可以分享下不  发表于 2021-8-29 16:45
单片小菜 发表于 2021-9-1 09:29 | 显示全部楼层
还有这样的问题,很奇怪哦。
我在想,是不是电脑本身系统优化的问题。
leexus 发表于 2021-9-21 22:32 | 显示全部楼层
优化级别是不是一样的,编译控制字符是不是一样的,如果都是一样的就没道理了,仔细检查一下
Bobby13 发表于 2021-9-21 23:54 来自手机 | 显示全部楼层
beyond compare 比较 map 文件
您需要登录后才可以回帖 登录 | 注册

本版积分规则

2

主题

11

帖子

0

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