当前位置:首页 > 嵌入式 > 嵌入式云IOT技术圈
[导读]作者| strongerHuang微信公众号| strongerHuangKeilMDK是否支持编译器?有没有办法选择其他编译器?可能你使用其他GUN工具链进行编译时,会出现类似如下错误:---Error:can'texecute'as'---Error:can'texecute...

作者 | strongerHuang

微信公众号 | strongerHuang


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


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

--- Error: can't execute 'as'--- Error: can't execute 'gcc'
用于ARM芯片的GCC编译器有许多不同的变体,现在Keil MDK仍然支持GCC编译器的,下面就来讲述一下在Keil MDK中使用GCC编译器工具链。
嵌入式专栏

1

关于 GCCGCC 原本代表“GNU C Compiler”的意思,它属于GNU编译器套件。GCC 是 GNU 推出的功能强大、性能优越的多平台编译器,是 GNU 的代表作品之一。
网址:
https://gcc.gnu.org
目前(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操作系统上的嵌入式软件开发。
下载地址:https://developer.arm.com/tools-and-software/open-source-software/developer-tools/gnu-toolchain/gnu-rm/downloads

(公号不支持外链接,请复制链接到浏览器打开)


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


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


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

https://gcc.gnu.org/git/gcc.git


嵌入式专栏

3

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


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


嵌入式专栏

4

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


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

5

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


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

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

往期精彩

STM32开发 -- Keil基本使用

Keil MDK软件包(pack)下载的几种方法

【编译器玄学研究报告】第一期——位域和volatile

分享一个在Keil开发环境中配置代码格式化工具Astyle(美化代码风格)

Keil MDK的一些推荐功能(编码格式、自动保存、代码提示、动态语法检查、多核编译)

觉得本次分享的文章对您有帮助,随手点[在看]并转发分享,也是对我的支持。

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

LED驱动电源的输入包括高压工频交流(即市电)、低压直流、高压直流、低压高频交流(如电子变压器的输出)等。

关键字: 驱动电源

在工业自动化蓬勃发展的当下,工业电机作为核心动力设备,其驱动电源的性能直接关系到整个系统的稳定性和可靠性。其中,反电动势抑制与过流保护是驱动电源设计中至关重要的两个环节,集成化方案的设计成为提升电机驱动性能的关键。

关键字: 工业电机 驱动电源

LED 驱动电源作为 LED 照明系统的 “心脏”,其稳定性直接决定了整个照明设备的使用寿命。然而,在实际应用中,LED 驱动电源易损坏的问题却十分常见,不仅增加了维护成本,还影响了用户体验。要解决这一问题,需从设计、生...

关键字: 驱动电源 照明系统 散热

根据LED驱动电源的公式,电感内电流波动大小和电感值成反比,输出纹波和输出电容值成反比。所以加大电感值和输出电容值可以减小纹波。

关键字: LED 设计 驱动电源

电动汽车(EV)作为新能源汽车的重要代表,正逐渐成为全球汽车产业的重要发展方向。电动汽车的核心技术之一是电机驱动控制系统,而绝缘栅双极型晶体管(IGBT)作为电机驱动系统中的关键元件,其性能直接影响到电动汽车的动力性能和...

关键字: 电动汽车 新能源 驱动电源

在现代城市建设中,街道及停车场照明作为基础设施的重要组成部分,其质量和效率直接关系到城市的公共安全、居民生活质量和能源利用效率。随着科技的进步,高亮度白光发光二极管(LED)因其独特的优势逐渐取代传统光源,成为大功率区域...

关键字: 发光二极管 驱动电源 LED

LED通用照明设计工程师会遇到许多挑战,如功率密度、功率因数校正(PFC)、空间受限和可靠性等。

关键字: LED 驱动电源 功率因数校正

在LED照明技术日益普及的今天,LED驱动电源的电磁干扰(EMI)问题成为了一个不可忽视的挑战。电磁干扰不仅会影响LED灯具的正常工作,还可能对周围电子设备造成不利影响,甚至引发系统故障。因此,采取有效的硬件措施来解决L...

关键字: LED照明技术 电磁干扰 驱动电源

开关电源具有效率高的特性,而且开关电源的变压器体积比串联稳压型电源的要小得多,电源电路比较整洁,整机重量也有所下降,所以,现在的LED驱动电源

关键字: LED 驱动电源 开关电源

LED驱动电源是把电源供应转换为特定的电压电流以驱动LED发光的电压转换器,通常情况下:LED驱动电源的输入包括高压工频交流(即市电)、低压直流、高压直流、低压高频交流(如电子变压器的输出)等。

关键字: LED 隧道灯 驱动电源
关闭