当前位置:首页 > > strongerHuang
[导读]Keil MDK 是否支持编译器?有没有办法选择其他编译器?

作者 | strongerHuang

微信公众号 | strongerHuang


Keil MDK 是否支持编译器?有没有办法选择其他编译器?


可能你使用其他GUN工具链进行编译时,会出现类似如下错误:

--- Error: can't execute 'as'--- Error: can't execute 'gcc'

用于ARM芯片的GCC编译器有许多不同的变体,现在Keil MDK仍然支持GCC编译器的,下面就来讲述一下在Keil MDK中使用GCC编译器工具链。 

1

关于 GCC

GCC 原本代表“GNU C Compiler”的意思 ,它属于GNU编译器套件。GCC 是 GNU 推出的功能强大、性能优越的多平台编译器,是 GNU 的代表作品之一。

目前(2020-11)GCC已经更新到 V10.2版本了。
早期的GCC主要针对于C语言,随着编程的发展,现在不仅支持C语言,还支持其他很多语言,包括 C++、Ada、Objective-C、Fortran 和 Java 等。
因此,GCC 的意思被重新定义为“GNU Compiler Collection”,也即“GUN 编译器套件”。
GCC受到广大软件开发者的喜欢,有一个很重要的原因就是免费。你会发现一个问题,很多开源的IDE,基本上集成的编译器都是GCC,比如STM32CubeIDE、RT-Thread Studio等。
关于GCC更多的介绍,可以参看我之前分享的文章 GCC为何如此强大? 

2

下载 GCC 工具链

这里使用的 GCC工具链 其实是“GNU Arm嵌入式工具链”,是ARM 官方推荐的一套工具,主要是针对32位Arm Cortex-M、 Cortex-R和Cortex-A系列处理器的一套工具链。
“GNU Arm”包括GNU编译器(GCC),可直接从Arm免费获得,用于Windows,Linux和Mac OS X操作系统上的嵌入式软件开发。

进入网页,根据自己系统选择合适的版本下载:


当然,我们这里选择windows版exe文件,或压缩文件。(因为Keil只支持Windows版本)。


其实,你可以在gcc主干上找到分支。


3

安装 GCC 工具链

方法一:安装exe文件 在windows安装exe文件,相比是一个程序员都会安装,根据提示信息,基本上一路“next”下去就行了。


方法二:直接解压zip压缩文件 如果下载的是zip压缩文件,直接解压文件到指定目录即可。
如果你进行了第一种方法exe安装,你进入安装目录下,你会发现安装的文件和这里解压的文件一样。


4

Keil 配置 GCC 工具链

这里配置方法和我之前分享文章《手把手教你升级Keil MDK的ARM编译器》中第3章节【Keil 配置编译器】方法类似。
打开工程管理,进入“Folders/Extensions”选项栏 可以通过菜单:Project -> Manage -> Project items进入。
也可以通过工具栏工程管理快捷图标进入:


这里切换配置编译器工具方法比较简单,此时就可以和往常一样正常使用了。 

5

额外说明

切换编译器会导致工程配置选项发生变化,比如:


配置选项发生变化都是小问题,因为不同编译器,代码不兼容性才是大问题,比如你直接编译针对Arm编译器的代码,肯定会出问题。

这里的细节比较多,后期抽空再给大家描述切换编译器代码迁移修改的内容。

------------ END ------------


关注 微信公众号『嵌入式专栏』,底部菜单查看更多内容,回复“加群”按规则加入技术交流群。


免责声明:本文内容由21ic获得授权后发布,版权归原作者所有,本平台仅提供信息存储服务。文章仅代表作者个人观点,不代表本平台立场,如有问题,请联系我们,谢谢!

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除( 邮箱:macysun@21ic.com )。
换一批
延伸阅读

逻辑分析、高效能运算核心、灵活自动化烧录、先进通讯协议

关键字: 嵌入式 自动化 RS-485 接口

覆盖 TI MCU、MPU 和无线连接解决方案的统一、生产就绪平台,消除迁移障碍,并缩短全球 Zephyr 开发者的上市时间 上海2026年10月14日 /美通社/ --...

关键字: RTOS 嵌入式 TI 开发者

在物联网终端、无线传感节点、便携采集设备与无人值守嵌入式控制系统中,电池续航是决定产品实用性与运维成本的核心指标。多数低功耗嵌入式设计过度依赖软件休眠、数字时钟裁剪等数字节能手段,却忽略了模拟电路长期静态漏电、有源器件偏...

关键字: 嵌入式 控制系统 低功耗

随着物联网设备向微型化、多频段、低成本、快迭代方向快速发展,嵌入式天线设计已成为硬件开发的核心瓶颈。传统板载天线、陶瓷天线、FPC天线方案,普遍存在设计周期长、PCB布局限制多、频段适配性差、量产一致性低等问题,极大拖慢...

关键字: 天线 物联网 嵌入式

随着汽车向电动化、智能化、网联化高速迭代,车载嵌入式系统的功能复杂度、控制精度与可靠性要求大幅提升。传统车用嵌入式系统多采用“纯数字MCU+外置模拟芯片”的分立架构,存在线路繁琐、信号损耗大、响应延迟高、故障率偏高等问题...

关键字: 嵌入式 汽车电子 模拟芯片

随着生活节奏不断加快,一次采购更多食材、提前规划家庭饮食,逐渐成为不少消费者的日常习惯。尤其对于追求高品质生活的家庭而言,冰箱不仅需要拥有充足的储存空间,更需要在长时间储存过程中尽可能保持食材原有的口感与状态。然而,传统...

关键字: 十字门冰箱 净化系统 嵌入式

触觉行业论坛(HIF)制定的规范为可编程触觉提供了通用框架;Vector Haptics API控制、实时音频转触觉及双通道驱动,则为产品团队提供了紧凑的集成路径

关键字: 可编程触觉 处理器 嵌入式

我一直对谷歌助手在我们说“好,谷歌”或“嘿,Siri”时立即开始录音的机制感到着迷。这种启发促使我探索如何将唤醒词检测技术应用于嵌入式设备。在这个项目中,我也意识到在树莓派等小型板载计算机(SBC)上运行时需要进行必要的...

关键字: 嵌入式 树莓派 计算机 INMP441

在万物互联的数字化浪潮中,物联网技术打破了传统设备的信息孤岛,而嵌入式视觉作为设备感知物理世界的核心载体,正依托物联网架构完成颠覆性变革。不同于传统机器视觉依赖云端处理、固定场景作业的局限,物联网驱动下的嵌入式视觉,实现...

关键字: 物联网 嵌入式 视觉
关闭