配置AC5(ARM Compiler 5)编译器
前面我们按照了Keil MDK 版本,但是上面只有AC6(全称是ARM Compiler 6)编译器,老版本的AC5编译器没有集成上去,如下图:可以看到Compiler Version 5处于Missing的状态,而Compiler Version 6是可以使用的状态,而且可以选择版本为V6.22版本:
需要我们自己手动添加,那么为什么我们还要使用老版本的AC5编译器呢?
许多传统嵌入式项目(如基于Keil MDK或IAR的工程)依赖AC5的特定语法或编译指令。迁移到AC6或GCC可能需重构代码,而AC5能无缝兼容旧项目。部分芯片厂商提供的SDK和库文件(如STM32 HAL库早期版本)也仅完整支持AC5。
AC5提供更细致的错误检查和调试信息,例如堆栈溢出检测、内存访问违例的实时报告。其生成的符号文件与ARM架构的调试器(如ULINK、J-Link)深度集成,便于进行低层级问题排查。
虽然ARM主推AC6(基于Clang/LLVM),但AC6的优化策略差异可能导致性能回退。在混合开发环境中,保留AC5作为备选编译器可对比生成代码的质量
最常见的问题就是 有些老项目必须使用AC5编译器,才不会报错,而使用AC6编译器就会报一堆错误
一,解析AC5编译器文件路径
安装AC5编译器很简单:只需要把AC5的相关文件,放到AC6的同一级文件目录之下
我们先看看AC6文件在Keil的哪个地方:ARM下的ARMCLANG就是AC6编译器所在文件:
也就是说我们需要把AC5的文件移动到ARM之下
接下我们解压AC5的文件夹:
打开看看:
发现出现了两个ARMCC ,但是对比AC6的文件结构,我们应该知道要将文件2移动到ARM下面:
二,安装AC5编译器
完成了AC5的文件移植,下面还要在Keil里面配置一下,才能使用AC5编译器,按照下图操作:相信如果理解了前面的路径解析 下面的操作就很容易理解了
点完ok后
如果按照下图,你能找到v5.06,说明AC5安装成功