手把手教你在Keil MDK中使用GCC编译器工具链

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 的代表作品之一。
网址:
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 ------------

(0)

相关推荐

  • C语言编译器之一,GCC

    C语言作为高级语言,用其编写的程序指令机器并不能识别,因此需要有一个编译器将其转换为机器可识别的二进制指令.C语言已经出现50多年的时间,其相关的编译器种类众多,从最早先的turbo c系列编译器,到 ...

  • 手把手教你升级Keil MDK的ARM编译器

    今天在我的技术交流群里,有朋友问了这么一个问题:怎么才能用更高的编译器呀? 这位朋友给了一张图: 从上图可以看得出来,这位朋友使用的Keil MDK并不是最新版本.目前(2020-11)最新MDK版本 ...

  • 手把手教你在通达信中添加同花顺F10功能(图解)

    同花顺中的F10比起通达信的F10优势非常明显,有朋友需要在通达信中去看同花顺的F10,因此我做了一个教程,希望对你有帮助. 1.进入通达信软件后,点击左上角的菜单栏中的"工具"→ ...

  • 手把手教你如何在打板中稳定盈利——超短复盘篇

    2018-10-08拾荒网 编辑:苏州比东京re浏览:1251次 一.自定义板块 在同花顺"我的板块"中自定义这些板块,将每天的数据更新到这些板块中,以便次日盘中实时查看和收盘后的 ...

  • 手把手教你如何在打板中稳定盈利——入门综合篇

    一.手法起源: 涨停板是个股供求失衡的极端表现,通常次日会有惯性高开,源于买方不惜成本的抢筹行为所导致.在良性的市场中,甚至走出持续涨停的强势表现.基于此,市场演变出一种依靠涨停板的惯性溢价来赚取收益 ...

  • 手把手教你如何完成人生中的第一个引体向上

    ·小王是一位健身爱好者,他很喜欢健身,平时练的也很积极,他特别羡慕倒三角的身材,他也知道引体向上是最好的打造倒三角的训练手段之一,所以他特别期待能做把引体向上做好,但是他练了很久还是不能做一个引体向上 ...

  • 手把手教你如何在电梯中安装无线网桥?电梯监控安装调试注意事项

    前言 大家好,我是薛哥.无线网桥这个产品,我第一次使用的时候是在电梯监控中,那个时候楼高超过100米,而且使用的网络电梯监控,因此首先考虑了电力猫,但是效果不好,最后用的无线网桥,无线网桥如何安装?如 ...

  • Keil MDK中Image~~RW

    ARM程序的组成 此处所说的"ARM程序"是指在ARM系统中正在执行的程序,而非保存在ROM中的bin映像(image)文件,这一点清注意区别.             一个ARM ...

  • 手把手教你如何从卦中解读关键信息?

    梅花易数线下课 梅花易数是众多术数中较为好学的一门,其特征快速上手.入门容易,但要学精也有一定的难度. 作为想学习传统文化的初学者常老师建议学习梅花易数,从基础学起,对后期学习奇门遁甲.大六壬有帮助, ...

  • 手把手教你如何验证八字中的喜用神

    看一个人的八字,大多就是要先确定这个八字的喜用神.不然,则无法进一步推衍出,你人生中即将发生的事件以及即将遭遇的人物,会对你产生怎样的利与害关系. 有的八字,喜用神极易判断,一看则比较明了:而有的八字 ...