搭建STM32開源開發(fā)環(huán)境

公司為了統(tǒng)一開發(fā)環(huán)境,將所有的基于arm的處理器開發(fā)環(huán)境統(tǒng)一為Eclipse禀酱,于是乎有了該篇日記炬守,以記錄搭建過程及使用過程中出現(xiàn)的各種問題。網(wǎng)絡(luò)中有很多關(guān)于搭建STM32開源開發(fā)環(huán)境的文章比勉,但搭建和使用中有些問題并沒有解答劳较。

一.下載相關(guān)軟件:

1.下載Eclipse集成開發(fā)環(huán)境,直接下載Eclipse IDE for C/C++ Developers目前最新版本代號(hào)為Neon浩聋。
2.下載gnu arm eclipse plugin储矩,用該插件支持arm gcc編譯器相關(guān)配置合住。
3.下載交叉編譯工具鏈,此處使用GCC ARM Embedded in Launchpad該處的工具鏈。
4.下載Build Tool工具宏娄,該工具提供編譯工程需要的相關(guān)命令如:make、rm搬葬、echo等斟或。

二.搭建開發(fā)環(huán)境:

1.將下載好的Eclipse壓縮包解壓到期望的安裝位置,比如D:\Program Files环凿,同時(shí)為了方便使用梧兼,建立桌面快捷方式。
2.安裝gnu arm eclipse 插件智听。打開Eclipse 點(diǎn)擊菜單[Help]>[Install New Software...]進(jìn)入插件安裝界面:



在彈出界面點(diǎn)擊1.[add...] 然后在彈出窗口點(diǎn)擊2.[Archive...]選擇下載的gnu arm eclipse插件文件羽杰。



點(diǎn)擊ok按鈕彈出如下界面,選擇需要安裝的插件到推,此處選擇全部安裝考赛。

點(diǎn)擊[Next]按鈕,等待進(jìn)度條完成莉测,在彈出窗口選擇[Accept]颜骤,點(diǎn)擊[Finish]完成安裝。

3.安裝交叉編譯工具鏈捣卤。



4.安裝Build Tools忍抽。
通過上述步驟開發(fā)環(huán)境已經(jīng)完全安裝成功,下面需要打開Eclipse配置交叉編譯工具董朝、Build Tools的路徑梯找。

打開Eclipse點(diǎn)擊[Windows] > [preference] 打開配置窗口,點(diǎn)擊C/C++選項(xiàng)益涧,然后點(diǎn)擊[Global Tools Paths]選項(xiàng)锈锤,如下圖,在窗口右側(cè)設(shè)置Build Tools路徑以及交叉編譯工具鏈路徑,可以手動(dòng)選擇安裝路徑久免,也通過[Restore Defaults]按鈕自動(dòng)設(shè)置路徑浅辙。


自此開發(fā)編譯環(huán)境安裝、配置完成阎姥,可以進(jìn)行項(xiàng)目開發(fā)了

三.使用過程出現(xiàn)問題:

1.未指定浮點(diǎn)支持選項(xiàng)记舆,編譯時(shí)會(huì)出現(xiàn)如下錯(cuò)誤:

Error: selected processor does not support `vstmdbeq r0!,{s16-s31}' in Thumb mode

解決該問題通過設(shè)置項(xiàng)目屬性中[C/C++ Build] > Setting 窗口中的Tool Setting選項(xiàng)[Target Process]子項(xiàng)中的[Float ABI],根據(jù)需要設(shè)置為軟件浮點(diǎn)呼巴、硬件浮點(diǎn)泽腮,同時(shí)修改[FPU]下拉選項(xiàng),選擇具體實(shí)現(xiàn)衣赶。

2.未定義'_exit' 和 '_sbrk'錯(cuò)誤:

exit.c:(.text.exit+0x16): undefined reference to `_exit'
sbrkr.c:(.text._sbrk_r+0xc): undefined reference to `_sbrk'

解決該問題需要在[C/C++ Build] > Setting 窗口中的Tool Setting選項(xiàng)[Cross Arm C Linker]子項(xiàng)[Miscellaneous]中添加'--specs=nosys.specs'诊赊。

3.在工程中屏蔽不需要編譯的文件:

在編譯工程時(shí)往往需要屏蔽一些文件,但又不想將其刪除府瞄,可以通過設(shè)置[C/C++ General]選項(xiàng)中子項(xiàng)[Paths and Symbols]中[Source Location]窗口中的Filters碧磅,來批量屏蔽不需要編譯的文件。

4.匯編文件必須以大寫的'.S'結(jié)尾遵馆,小寫的'.s'文件默認(rèn)不進(jìn)行編譯鲸郊。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市货邓,隨后出現(xiàn)的幾起案子秆撮,更是在濱河造成了極大的恐慌,老刑警劉巖换况,帶你破解...
    沈念sama閱讀 217,657評(píng)論 6 505
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件像吻,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡复隆,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,889評(píng)論 3 394
  • 文/潘曉璐 我一進(jìn)店門姆涩,熙熙樓的掌柜王于貴愁眉苦臉地迎上來挽拂,“玉大人,你說我怎么就攤上這事骨饿】髡唬” “怎么了?”我有些...
    開封第一講書人閱讀 164,057評(píng)論 0 354
  • 文/不壞的土叔 我叫張陵宏赘,是天一觀的道長(zhǎng)绒北。 經(jīng)常有香客問我,道長(zhǎng)察署,這世上最難降的妖魔是什么闷游? 我笑而不...
    開封第一講書人閱讀 58,509評(píng)論 1 293
  • 正文 為了忘掉前任,我火速辦了婚禮,結(jié)果婚禮上脐往,老公的妹妹穿的比我還像新娘休吠。我一直安慰自己,他們只是感情好业簿,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,562評(píng)論 6 392
  • 文/花漫 我一把揭開白布瘤礁。 她就那樣靜靜地躺著,像睡著了一般梅尤。 火紅的嫁衣襯著肌膚如雪柜思。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,443評(píng)論 1 302
  • 那天巷燥,我揣著相機(jī)與錄音赡盘,去河邊找鬼。 笑死矾湃,一個(gè)胖子當(dāng)著我的面吹牛亡脑,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播邀跃,決...
    沈念sama閱讀 40,251評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼霉咨,長(zhǎng)吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來了拍屑?” 一聲冷哼從身側(cè)響起途戒,我...
    開封第一講書人閱讀 39,129評(píng)論 0 276
  • 序言:老撾萬榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎僵驰,沒想到半個(gè)月后喷斋,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,561評(píng)論 1 314
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡蒜茴,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,779評(píng)論 3 335
  • 正文 我和宋清朗相戀三年星爪,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片粉私。...
    茶點(diǎn)故事閱讀 39,902評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡顽腾,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出诺核,到底是詐尸還是另有隱情抄肖,我是刑警寧澤,帶...
    沈念sama閱讀 35,621評(píng)論 5 345
  • 正文 年R本政府宣布窖杀,位于F島的核電站漓摩,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏入客。R本人自食惡果不足惜管毙,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,220評(píng)論 3 328
  • 文/蒙蒙 一腿椎、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧锅风,春花似錦酥诽、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,838評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至边器,卻和暖如春训枢,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背忘巧。 一陣腳步聲響...
    開封第一講書人閱讀 32,971評(píng)論 1 269
  • 我被黑心中介騙來泰國(guó)打工恒界, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人砚嘴。 一個(gè)月前我還...
    沈念sama閱讀 48,025評(píng)論 2 370
  • 正文 我出身青樓十酣,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親际长。 傳聞我的和親對(duì)象是個(gè)殘疾皇子耸采,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,843評(píng)論 2 354

推薦閱讀更多精彩內(nèi)容

  • Android游戲開發(fā)實(shí)踐(1)之NDK與JNI開發(fā)02 承接上篇Android游戲開發(fā)實(shí)踐(1)之NDK與JNI...
    AlphaGL閱讀 3,754評(píng)論 0 24
  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理,服務(wù)發(fā)現(xiàn)工育,斷路器虾宇,智...
    卡卡羅2017閱讀 134,656評(píng)論 18 139
  • 一、NDK產(chǎn)生的背景 Android平臺(tái)從誕生起如绸,就已經(jīng)支持C嘱朽、C++開發(fā)。眾所周知怔接,Android的SDK基于J...
    Ten_Minutes閱讀 3,502評(píng)論 1 27
  • 月夜下扼脐,姥爺端一杯清酒岸军,坐在那把古舊的凳子上,對(duì)著月光淺吟清唱谎势,小小的我托著腮幫子,聽不懂卻聽得發(fā)呆…… 冬...
    此間輕唱閱讀 348評(píng)論 5 5