【IDE问题篇】新电脑安装Keil5,出现找不到arm 编译器版本5编译报错;改为版本6后旧代码编译是出现编译报错
【IDE问题篇】新电脑安装Keil5,出现找不到arm 编译器版本5编译报错;改为版本6后旧代码编译是出现编译报错
- 问题描述
-
- 问题分析
- 使用编译器版本6
- 下载AC5,使用AC5
问题描述
新安装的keil5 编译代码时出现了如下问题:
问题分析
经查阅,是因为没有安装arm 编译器版本5 而ide指定默认使用arm编译器版本5,如下:
arm 编译器指定使用了编译器版本5,但提示已缺失。
使用编译器版本6
将编译器改为 使用版本6,会出现如下:
经查:AC5 和 AC6之间存在差异如下
编译架构差异
AC5:基于传统编译器架构,优化策略以静态分析为主3。
AC6:基于 LLVM 框架,支持更先进的动态优化算法和对新型 Arm 处理器架构(如 Cortex-M55、Cortex-A78)的适配36。
语法兼容性
AC6 对代码要求更严格,例如 naked 函数内禁止非汇编语句,可能导致 AC5 代码迁移时报错(需修改代码逻辑)6。
调试体验**
AC6 在 -O1 下保留更多调试信息,而 AC5 的 -O0 优化可能因调试窗口关闭导致断点设置受限24。
优化等级
AC5:提供 0~3 级优化,其中 -O3 侧重性能,但可能显著增加代码体积;-O0 保留完