配置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安装成功

相关推荐
星辰pid1 小时前
stm32的gpio模式到底该怎么选择?(及iic,spi,定时器原理介绍)
stm32·单片机·嵌入式硬件
axuan126512 小时前
10.【NXP 号令者RT1052】开发——实战-RT 看门狗(RTWDOG)
单片机·嵌入式硬件·mcu
-大头.2 小时前
Rust高级类型与零成本抽象实战
stm32·单片机·rust
咯哦哦哦哦2 小时前
vscode arm交叉编译 中 cmakeTools 编译器设置
linux·arm开发·vscode·编辑器
Porco.w5 小时前
STM32 DMA
stm32·单片机·嵌入式硬件
BreezeJuvenile6 小时前
外设模块学习(17)——5V继电器模块(STM32)
stm32·单片机·嵌入式硬件·学习·5v继电器模块
GilgameshJSS6 小时前
STM32H743-ARM例程40-U_DISK_IAP
c语言·arm开发·stm32·单片机·嵌入式硬件
hazy1k8 小时前
51单片机基础-GPIO结构详解
stm32·单片机·嵌入式硬件·51单片机
m0_748248028 小时前
C++与C#布尔类型深度解析:从语言设计到跨平台互操作
c++·stm32·c#
云山工作室8 小时前
基于协同过滤算法的话剧购票系统(论文+源码)
单片机·物联网·毕业设计·课程设计·毕设