交叉編譯中所指的平台差異
❶ 什麼是交叉編譯,為什麼要採用交叉編譯
在一個平台架構上,編譯另一個平台架構的可執行代碼,就是交叉編譯。
例如在x86架構的PC上編譯arm嵌入式設備的可執行程序。
交叉編譯是不得不用,
首先在目標設備的系統還沒引導起來的時候,編譯目標平台的引導程序,顯然只能交叉編譯。
還有因為目標設備往往能力太低,沒法安裝編譯器,或者勉強安裝了,也慢得像蝸牛。
❷ 嵌入式Linux開發中的交叉編譯是什麼意思
所謂交叉編譯是指在A系統上編譯B系統的二進制代碼。
嵌入式的應用程序,甚至操作系統是運行在特定目標平台上,例如一塊arm架構的目標板。而編譯程序的時候通常是在普通x86構架下的Linux操作系統的PC上。在PC上編譯嵌入式應用程序的過程叫做交叉編譯。
❸ 為什麼要用交叉編譯器
交叉編譯,簡單地說,就是在一個平台上生成另一個平台上的可執行代碼。這里需要注意的是所謂平台,實際上包含兩個概念:體系結構(Architecture)、操作系統(Operating System)。同一個體系結構可以運行不同的操作系統;同樣,同一個操作系統也可以在不同的體系結構上運行。舉例來說,我們常說的x86 Linux平台實際上是Intel x86體系結構和Linux for x86操作系統的統稱;而x86 WinNT平台實際上是Intel x86體系結構和Windows NT for x86操作系統的簡稱。
有時是因為目的平台上不允許或不能夠安裝我們所需要的編譯器,而我們又需要這個編譯器的某些特徵;有時是因為目的平台上的資源貧乏,無法運行我們所需要編譯器;有時又是因為目的平台還沒有建立,連操作系統都沒有,根本談不上運行什麼編譯器。
綜上,在嵌入式開發的時候我們就要使用交叉編譯器。
❹ 請問什麼是交叉編譯跟本地編譯有什麼區別
交叉編譯就是在A平台編譯出能在B平台運行的文件。
❺ ubuntu下進行嵌入式C語言開發時,什麼叫交叉編譯為什麼要交叉編譯
交易編譯就是將文件編譯成目標機可執行的文件。
比如說:你在PC機上寫一個helloword,怎麼讓它到開發板上運行,開發板上的指令跟PC機不到,就需要用到交叉編譯工具,編譯成開發板上能識別的指令。
❻ 交叉編譯環境包括哪些工具,它的作用是什麼
首先你要知道一個軟體可能需要在多個CPU架構的平台上運行,如ARM架構,X86架構等等。
假設你要開發一個軟體目標平台是ARM,那麼你可以選擇在PC上,即X86平台上進行開發,然後使用交叉編譯工具把軟體編譯成ARM架構版本,然後才能在ARM上運行,如果只是用一般的編譯工具鏈,那麼只能編譯在當前平台上運行。
至於編譯工具鏈有哪些,具體要看你的開發平台和目標平台,會對應不同的編譯工具。
❼ gcc和交叉編譯工具生成的可執行文件有什麼不同
可執行文件的目標平台不一樣。你說的gcc應該是指在pc上,即x86體系結構。而交叉編譯生成的應該是其他體系平台的,如ARM。只能在對應的平台上運行。
❽ 請問什麼是交叉編譯跟本地編譯有什麼區別
交叉編譯就是在A平台編譯出能在B平台運行的文件。