这些小活动你都参加了吗?快来围观一下吧!>>
电子产品世界 » 论坛首页 » 综合技术 » 基础知识 » 使用高版本的keil中添加AC5的方法

共4条 1/1 1 跳转至

使用高版本的keil中添加AC5的方法

高工
2025-10-28 16:13:55     打赏

    最近对使用keil进行了升级,发现高版本KEIL中对于AC5的编译器没有安装,而在之前的项目中,需要使用AC5编译器进行调试,使用AC6编译器的时候,发现有很多错误。

 对于一些友商32位单片机,发现低版本的keil无法安装一些pack包,没办法只好对高版本的MDK添加AC5的编译器。

一:手动下载AC5的编译器。

     AC5: ARM Compiler 5,传统编译器,使用 --c99 编译。

    AC6: ARM Compiler 6,基于 LLVM/Clang 的新编译器,默认使用 -std=c99 等。性能更好,但某些旧代码可能需要修改才能编译通过。

 第一种方法就是去官方进行下载,https://developer.arm.com/downloads/view/ACOMP5

 第种方法就是:在低版本的MDK中将AC5 编译器复制出来。

二:安装AC5编译器

     将下载的AC5安装到MDK的文件中,这里最好是默认安装,如果不是默认安装的情况下,也需要将AC5的编译器安装到arm的目录下,方便软件识别。

三:软件配置如下所示

打开 Keil MDK。

打开一个工程,点击魔术棒工具 Option for Target。转到 Target 选项卡。

在 Code Generation 区域,点击 Use Default Compiler Version 5 下拉菜单。

如果安装成功,你应该能看到新安装的编译器版本(例如 Use Default Compiler Version 5 或者具体的 Compiler Version 5)。

选择它,然后点击 OK。

1028-1.png

1028-2.png

AC5和AC6 编译器的区别如下:

这是 AC5 和 AC6 的分散加载文件语法差异导致的。AC5 的分散加载文件可能需要使用 * 来匹配所有对象文件,而 AC6 需要使用 *.*。你需要根据编译器版本调整你的 .sct 文件。

Keil 找不到编译器

确保安装或复制的路径没有中文或特殊字符。

尝试使用方法二中的 Project -> Manage -> Project Items -> Folders/Extensions 来手动添加路径。

代码在 AC5 下编译通过,但在 AC6 下报错

这是迁移旧项目时最常见的问题。AC6 语法检查更严格。常见原因包括:

隐式函数声明(未包含正确的头文件)。

变量定义和作用域问题。

内联汇编语法不同。

通常需要根据 AC6 的错误提示逐一修改代码。

当然我这里还尝试了另外一个比较协修的方法就是:为了安装AC5的编译器,先安装一个低版本的,成功之后,再安装一个高版本的的。也是可以的。




关键词: keil     编译器安装    

院士
2025-10-28 16:31:29     打赏
2楼

还是推荐升级 AC6.

如果是老项目就直接不要升级Keil


院士
2025-10-28 17:08:51     打赏
3楼

谢谢楼主分享“软件补品的方法


专家
2025-10-29 08:38:11     打赏
4楼

谢谢楼主分享


共4条 1/1 1 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册 ]