作者 |?strongerHuang
微信公眾號 |?strongerHuang
Keil MDK 是否支持編譯器?有沒有辦法選擇其他編譯器?
可能你使用其他GUN工具鏈進行編譯時,會出現(xiàn)類似如下錯誤:
--- Error: can't execute 'as'--- Error: can't execute 'gcc'
用于ARM芯片的GCC編譯器有許多不同的變體,現(xiàn)在Keil MDK仍然支持GCC編譯器的,下面就來講述一下在Keil MDK中使用GCC編譯器工具鏈。?
1
關(guān)于 GCC
GCC?原本代表“GNU C Compiler”的意思 ,它屬于GNU編譯器套件。GCC 是 GNU 推出的功能強大、性能優(yōu)越的多平臺編譯器,是 GNU 的代表作品之一。
目前(2020-11)GCC已經(jīng)更新到 V10.2版本了。早期的GCC主要針對于C語言,隨著編程的發(fā)展,現(xiàn)在不僅支持C語言,還支持其他很多語言,包括 C++、Ada、Objective-C、Fortran 和 Java 等。
因此,GCC 的意思被重新定義為“GNU Compiler Collection”,也即“GUN 編譯器套件”。
GCC受到廣大軟件開發(fā)者的喜歡,有一個很重要的原因就是免費。你會發(fā)現(xiàn)一個問題,很多開源的IDE,基本上集成的編譯器都是GCC,比如STM32CubeIDE、RT-Thread Studio等。
關(guān)于GCC更多的介紹,可以參看我之前分享的文章 GCC為何如此強大??
2
這里使用的 GCC工具鏈?其實是“GNU Arm嵌入式工具鏈”,是ARM 官方推薦的一套工具,主要是針對32位Arm Cortex-M、 Cortex-R和Cortex-A系列處理器的一套工具鏈。
“GNU Arm”包括GNU編譯器(GCC),可直接從Arm免費獲得,用于Windows,Linux和Mac OS X操作系統(tǒng)上的嵌入式軟件開發(fā)。
進入網(wǎng)頁,根據(jù)自己系統(tǒng)選擇合適的版本下載:
當然,我們這里選擇windows版exe文件,或壓縮文件。(因為Keil只支持Windows版本)。
其實,你可以在gcc主干上找到分支。
3
方法一:安裝exe文件 在windows安裝exe文件,相比是一個程序員都會安裝,根據(jù)提示信息,基本上一路“next”下去就行了。
方法二:直接解壓zip壓縮文件 如果下載的是zip壓縮文件,直接解壓文件到指定目錄即可。
如果你進行了第一種方法exe安裝,你進入安裝目錄下,你會發(fā)現(xiàn)安裝的文件和這里解壓的文件一樣。
4
這里配置方法和我之前分享文章《手把手教你升級Keil MDK的ARM編譯器》中第3章節(jié)【Keil 配置編譯器】方法類似。
打開工程管理,進入“Folders/Extensions”選項欄 可以通過菜單:Project -> Manage -> Project items進入。
也可以通過工具欄工程管理快捷圖標進入:
這里切換配置編譯器工具方法比較簡單,此時就可以和往常一樣正常使用了。?
5
切換編譯器會導致工程配置選項發(fā)生變化,比如:
配置選項發(fā)生變化都是小問題,因為不同編譯器,代碼不兼容性才是大問題,比如你直接編譯針對Arm編譯器的代碼,肯定會出問題。
這里的細節(jié)比較多,后期抽空再給大家描述切換編譯器代碼遷移修改的內(nèi)容。
------------ END ------------
免責聲明:本文內(nèi)容由21ic獲得授權(quán)后發(fā)布,版權(quán)歸原作者所有,本平臺僅提供信息存儲服務(wù)。文章僅代表作者個人觀點,不代表本平臺立場,如有問題,請聯(lián)系我們,謝謝!