2009-10-06 62 views
-1

任何ARM處理器的工具鏈都可以用於編譯任何操作系統嗎?工具鏈對OS的依賴是什麼?任何ARM處理器的工具鏈

我的問題可能聽起來微不足道......我不知道ARM的工具鏈。

回答

4

是否可以使用任何Arm處理器的工具鏈來編譯任何 操作系統?

它取決於目標操作系統。如果它支持ARM體系結構(比如Linux),那麼只有配置和補丁丟失,但通常是。

什麼是工具鏈對 操作系統的依賴關係?

我在GCC只有經歷過,所以我會說binutilsglibc + kernel headers然後GCC。如果你想要線程,你也需要線程。

看到這篇文章如何引導Linux on ARM。雖然它比較老,但適用的補丁適用於相同的過程。

1

你可能想看看BuildRoot建立一個工具鏈目標武器和其他處理器。

0

一般來說,沒有。工具鏈具有依賴於系統libC庫的編譯器庫,這些庫來自操作系統(除非您正在爲沒有操作系統的小型「裸機」系統編譯,在這種情況下,它們來自其他地方)。

因此,使用給定工具鏈編譯的程序僅適用於具有兼容libC的系統。例如,如果您有基於ARM GlibC的系統的工具鏈,則它可以編譯使用GlibC的標準ARM Linux系統的程序,但不適用於使用uClibc的ARM uClinux系統或ARM裸機系統使用Newlib。

還有一些其他的小依賴(我不太熟悉),但這是最大的依賴。

0

有許多跨平臺編譯器可用,即使是許多版本的gcc也提供了......編譯內核for arm需要交叉編譯器並更改內核文件夾ex的頂層Makefile:ARCH = arm和CROSS_COMPILE = arm-linux-,CROSS_COMPILE參數取決於你在哪裏保存了gcc-跨平臺工具...

這裏ARCH代表架構