傻孩子(GorgonMeducer) · 2020年10月16日

惊爆内幕:老MDK也可以使用新编译器

作者:GorgonMeducer 傻孩子
首发:裸机思维

640.jpg

【写在前面的话】

如果说“喜新厌旧”是人类的天性,那么嵌入式程序员一定是特例——他们尤其不喜欢更换自己用惯了的工具——拿IDE来说吧,相当一部分人仍然抱着老版本的MDK迟迟不愿意更新,这里的原因很多:

  • “忙的要死,哪有时间去尝试新版本”
  • “新版本有啥特别的么?能用树状结构管理工程文件了么?”
  • “新编译器稳定么?”
  • “有破解么?”
  • “啥?更新了?我怎么不知道?”
  • “Arm官网太慢了……”
  • “目前的代码是一坨屎山……MDK的版本没人敢动……出了事你负责?”
  • ……

即便如此,仍然有一部分“逆行者”特别喜欢尝试全新版本的MDK——如果问起原因:“uVision万年不更新为啥要对新版本的MDK如此执着”——其回答一定是:“我想尝试最新版本的编译器”。

除此以外,还有另外一批人,他们因为某些原因(比如License),被“束缚在了”某个版本的MDK上,即便如此,他们也有一些相当合理的需求:

  • 他们可能对当前MDK所使用的编译器版本并不满意,并迫切希望使用过去某个“久经考验”的编译器版本;
  • 他们可能希望尝试Arm官方最新发布的编译器(例如修复了某个困扰已久的bug),但通常只有新版本的MDK才会搭载最新的编译器版本;最要命的是,一般来说新版本的MDK总是要比新版本的编译器迟到好几个月!

怎么办呢?别急,今天就为大家曝光MDK一个鲜为人知的隐藏功能。

【正文】

最近,Arm发布了Arm Compiler 6的最新版本 6.15。而最新版本的MDK也不过支持到 6.14:

640.png

那么我们如何在当前MDK版本下使用最新的 Arm Compiler 6.15 呢?

第一步:

从Arm官方网站下载最新的 Arm Compiler 6。需要特别注意的是,一定要下载 32bit 的版本(默认情况下会下载64bit的版本)

640-1.png

【网页链接:https://developer.arm.com/tools-and-software/embedded/arm-compiler/downloads/version-6

第二步:

将新的编译器安装到MDK所在的安装目录下:假设MDK被安装在"C:\Keil\_v5",则将新的编译器安装到“C:\Keil\_v5\Arm\”目录下,如果有所疑问,请看截图:

640-2.png

第三步:

打开MDK,并通过菜单 project->manage->project items 打开“manage project items” 窗口:

640-3.png

在窗口中,切换到“Folders/Extensions”选项卡,并单击下图中红色矩形框所标记的按钮“...”
640-4.png

在弹出的对话框中,单击“Add another ARM Compiler Verison to List...”

640-5.png

选中刚刚编译器所安装的目录:

640-6.png

单击OK。如果编译器被正确的识别,我们将会看到它被加入到 ARM Compiler Versions 列表中:

640-7.png

此时,单击 Close、并关闭MDK。重新启动MDK后,我们就可以在工程的配置选项中看到新加入的Arm编译器了:

640-8.png

在Code Generation->Arm Compiler 下来列表中选择新加入的编译器版本(比如这里的 6.15),立即试一下:

640-9.png

怎一个爽字了得!打完收工。

【结语】

其实,在这一过程中,有以下几点值得特别强调一下:

  • “下载 32bit 版本” 连同 “安装新编译器到 MDK 原有的安装目录下” 会“建议” 新的编译器使用 MDK 已有的License;
  • 你的MDK最少本身也要支持Arm Compiler 6;
  • 这些步骤仅对 Arm Compiler 有效;
  • 除了安装最新版本的编译器,你当然也可以用来安装老版本的Arm编译器,这里同时包括 Arm Compiler 5(也就是armcc)和 Arm Compiler 6(也就是armclang);
  • 仔细观察窗口“Manage Project Items” 窗口,你会发现,MDK实际上也支持 GCC 编译器——通过勾选 "Use GCC Compiler (GNU) for ARM projects",并正确配置GCC编译器所在的目录来启用GCC作为MDK的当前编译器。

640-1.jpg

一旦设置成功,你会发现,平时熟悉的工程选项也变了样:

640-10.png

专栏推荐文章

如果你喜欢我的思维,欢迎订阅裸机思维
版权归裸机思维(傻孩子图书工作室旗下公众号)所有,
所有内容原创,严禁任何形式的转载。
推荐阅读
关注数
1479
内容数
116
探讨嵌入式系统开发的相关思维、方法、技巧。
目录
极术微信服务号
关注极术微信号
实时接收点赞提醒和评论通知
安谋科技学堂公众号
关注安谋科技学堂
实时获取安谋科技及 Arm 教学资源
安谋科技招聘公众号
关注安谋科技招聘
实时获取安谋科技中国职位信息