使用AC6编译RT-Thread(如何升级arm编译器)

该文章主要主要内容是讲解如升级arm编译器的两种方法(1) 直接升级keil为新版本(2) 或者下载高版本编译器进行安装】,基于主题 rt-thread 在 Arm Compiler 6 (armclang)进行编译。

目录

在 MDK5 上使用 Arm Compiler 6 进行编译

方法一:升级 MDK 版本至 5.26 以上

方法二:下载安装 32 位 Arm Compiler 6

下载

安装

设置

使用

常见问题


在 MDK5 上使用 Arm Compiler 6 进行编译

RT-Thread 一般 Arm Compiler5 进行编译。当然也可以在 MDK5 上使用 Arm Compiler 6.10.1 及其以上版本的编译器上进行编译,实现方法有两种:

  1. 直接升级 MDK 为 5.26 及其以上版本;
  2. 下载安装 32 位 Arm Compiler 6。

非rtt的话,注意就是需要自行根据编译器版本号,定义arm clang相关的宏,便于兼容使用。

方法一:升级 MDK 版本至 5.26 以上

以升级 MDK 的方式增加对 Arm Compiler 6 的支持。卸载当前低版本 MDK,重新安装 5.26 版本及其以上的 MDK(详情查看 Keil MDK 安装)。

安装完成之后:在编译工程之前,选择使用 6.10.1 及其以上的编译器即可。

方法二:下载安装 32 位 Arm Compiler 6

下载

以下载安装编译器的方式增加对 Arm Compiler 6 的支持(请使用 MDK5.1.2 版本或以上)。对于 Arm Compiler 6,请下载 Windows 32-bit 进行安装,以使用 MDK 许可证。

编译器下载地址:Arm Compiler for Embedded – Arm Developer,选择 6.10.1 版本或以上版本。

安装

  • 找到 MDK5 安装路径,如默认路径 C:\ Keil_V5 \ ARM ,在 ARM 文件夹下新建文件夹并重命名,例如 C:\ Keil_V5 \ ARM \ ARMCCv506u6。

  • 解压下载的文件,双击 setup.exe 进行安装,将新版本的编译器安装到上述新建目录下。

设置

1、点击img Project - Manage - Project Items - Folders/Extensions. 勾选 Use ARM Compiler,点击右侧按钮 ...。(下图是官方图)

2、按照下图,单击 Add another ARM Compiler Version to List 添加新版本的编译器路径,添加新的路径之后会显示相应的新版本编译器,最后点击 Close。

使用

在编译工程之前,选择使用新的编译器即可。

常见问题

Q1: 编译时出现 “ArmClang: Error: No license checking back-end registered with id Keil.“

A: 这是由于安装了 64-bit 的 Arm Compiler 造成的,MDK 许可证不支持 Arm Compiler 6.x 64-bit,仅支持 Arm Compiler 6.x 32-bit,请下载安装 Compiler 6.x 32-bit。

Q2: 编译出现很多问题

A: 如果编译出现很多问题,那么很有可能就是AC6支持的不好,就先使用AC5吧

Q3: 还有就是不支持 c99 的问题。

A: AC6不识别c99的。此时可以将c99替换为-std=c99。一个示例如下:

在rtt中,这个问题一般存在于某些组件里,比如在分组device dirvers分组中的某些内容依赖c99,但是AC6不识别c99的。此时可以将c99替换为-std=c99。 右键device drivers分组,里面有个--c99设置,改为 -std=c99。然后就可以编译通过了。

 


  • 2
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Nameless-Y

文章帮助到我了!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值