arm裸機程式開發環境簡介

2021-07-13 13:13:26 字數 776 閱讀 4119

1: 開發平台:linux(紅帽企業版6.3)

2: 開發工具:

交叉工具鏈

makefile

鏈結器指令碼

eclipse整合開發環境

3: 關於交叉工具鏈

為什麼要用到交叉工具?因為我們在開發arm應用程式時,產生的目標**是要執行在arm指令架構的cpu/mcu上的,但是我們的開發工具大多數是執行在基於x86的平台上的,這個時候如果我們的開發工具依然按照x86的結構去進行**的編譯、鏈結、轉換的話,那最終的二進位制**是無法執行在我們的arm平台上的。

所以就需要有這樣一套工具,它能支援在x86平台上執行,同時生產的**能在arm平台上執行。這就是我們的arm交叉工具。

所謂的「鏈」,是指交叉工具是乙個集合,常用的交叉工具有:交叉編譯器、交叉鏈結器、交叉轉換器、交叉elf檔案工具、交叉反彙編器。

linux平台下支援arm開發的交叉工具有:arm-linux-gcc;arm-linux-ld;arm-linux-objcopy;arm-linux-readelf;arm-linux-objdump.

4: 關於makefile

使得程式除錯更簡便且嚴謹,方便是指每次除錯時只需執行 「make」;嚴謹是指能保證每次的編譯、鏈結等規則都會是一樣的。

5: 關於鏈結器指令碼

規定我們的.data(初始化的變數)、.bss(未初始化的變數)、.text(**段)等各段在記憶體中的起始/結束位址、對齊方式等。

6: 關於eclipse整合開發環境

以上是關於最近學習的一些小結,疏漏之處還請大家多多指教~

ARM 裸機 02 ARM裸機開發流程

執行在不同平台上的程式,開發過程不盡相同。為了更好地理解 arm 裸機的開發流程,我們先和比較熟悉的 windows linux 應用程式開發對比。不同平台程式開發流程對比示意 編譯嵌入式程式的平台稱為宿主機,譬如執行 ubuntu 系統的 pc。執行嵌入式程式的平台稱為目標機,譬如 arm 開發板...

學習arm裸機程式

兩個星期,打通了以mini2440為基礎,找別人借了個見jlink,編譯軟體用的是mdk4.22,打通了arm裸機的大部分程式,包括io 定時器 串列埠 中斷 ad等等,其中最重要的和微控制器的不同是位址問題 原先微控制器的c語言不需要管位址,但現在需要了,特別是rom ram的設定 其中比較重要的...

ARM裸機開發快速體驗

一。linux平台 自己寫makefile 自己寫lds指令碼 自己搭建除錯環境 二。裸機開發流程 1 編寫裸機程式 2 除錯裸機程式 3 編譯 鏈結 格式轉換成二進位制映像 1.安裝交叉工具鏈 把課程裡面的工具包拷貝到linux,解壓arm linux gcc到根目錄 c 交叉工具在usr loc...