交叉編譯的理解

2021-06-22 14:48:16 字數 722 閱讀 8157

可使用visual c++開發環境,編寫程式並編譯成可執行程式。這種方式下,我們使用pc平台上的windows工具開發針對windows本身的可執行程式,這種編譯過程稱為native compilation,中文可理解為本機編譯。然而,在進行嵌入式系統的開發時,執行程式的目標平台通常具有有限的儲存空間和運算能力,比如常見的 arm 平台,其一般的靜態儲存空間大概是16到32mb,而cpu的主頻大概在100mhz到500mhz之間。這種情況下,在arm平台上進行本機編譯就不太可能了,這是因為一般的編譯工具鏈(compilation tool chain)需要很大的儲存空間,並需要很強的cpu運算能力。為了解決這個問題,交叉編譯工具就應運而生了。通過交叉編譯工具,我們就可以在cpu能力很強、儲存空間足夠的主機平台上(比如pc上)編譯出針對其他平台的可執行程式

1、在windows pc上,利用ads(arm開發環境),使用armcc編譯器,則可編譯出針對arm cpu的可執行**。

2、在linux pc上,利用arm-linux-gcc編譯器,可編譯出針對linux arm平台的可執行**。

3、在windows pc上,利用cygwin環境,執行arm-elf-gcc編譯器,可編譯出針對arm cpu的可執行**。

4、在windows系統上,利用keil uvison工具,開發出執行在89c51微控制器上的程式。

5、在windows系統上,利用codewarrior ide工具,開發出執行在freescale xs128微控制器上的程式。

交叉編譯器理解

交叉編譯器理解 交叉編譯這個概念的出現和流行是和嵌入式系統的廣泛發展同步的。我們常用的計算機軟體,都需要通過編譯的方式,把使用高階計算機語言編寫的 比如c 編譯 compile 成計算機可以識別和執行的二進位制 本地編譯 我們在windows平台上,可使用visual c 開發環境,編寫程式並編譯成...

編譯 交叉編譯

交叉編譯含義 是指在乙個平台上生成另乙個平台上的可執行 同乙個體系結構可以執行不同的作業系統,同樣乙個作業系統也可以在不同的體系結構上執行 例 常說的x86 linux平台 指inter x86體系結構及linux for x86作業系統 x86 winnt平台 指inter x86體系結構及win...

交叉編譯(2) 交叉編譯鏈

什麼是交叉編譯鏈 明白了什麼是交叉編譯,那我們來看看什麼是交叉編譯鏈。首先編譯過程是按照不同的子功能,依照先後順序組成的乙個複雜的流程,如下圖 那麼編譯過程包括了預處理 編譯 彙編 鏈結等功能。既然有不同的子功能,那每個子功能都是乙個單獨的工具來實現,它們合在一起形成了乙個完整的工具集。同時編譯過程...