交叉編譯環境組成
㈠ 嵌入式交叉開發環境組成是怎樣的嵌入式系統開發為什麼需要這樣的交叉開發環境而通用計算機的開發不需要
所謂交叉編譯,就是在一種機器結構下編譯的軟體將在另一種完全不同的機器上運行。典型的交叉編譯的例子就是嵌入式系統工程師在自己的個人電腦上編譯後的程序將在ARM,MIPS等等嵌入式工作平台上運行。所以,嵌入式交叉開發環境一般將由個人電腦,PC端嵌入式開發軟體(如支持ARM的mdk,ads,rvds等等),支持硬體調試的硬體調試器及其配套的驅動軟體(如j-link),當然,最重要的還要有嵌入式硬體系統即通俗所謂的開發板。
嵌入式系統之所以要在通用計算機上開發,我想主要還是資源配置的問題,按嵌入式系統的定義,嵌入式系統的軟硬體將是可剪裁的以適用於各種不同的要求。這樣的話,由於硬體平台千差萬別,開發其編譯器將變得不可能,即便開發出來,可能也需要及其繁瑣的配置,大大降低了軟體的可用性。另外就是使用也不方便,大多數嵌入式系統不會配備像PC機一樣適於輸入的鍵盤和較大的屏幕,所以,如果在嵌入式系統上敲代碼,將是一件非常惱火的事情。
㈡ 什麼是交叉編譯環境mcs-51單片機的 交叉編譯環境有哪兩種
51單片機用keil軟體編程,交叉編譯就是在一個平台上生成另一個平台上的可執行代碼
㈢ 如何構建交叉編譯環境。
你說的是我下面的回答嗎?下面就一些問題作一個說明,以期拋磚引玉。
基於Linux操作系統的應用開發環境一般是由目標系統硬體(開發板)和宿主PC機所構成。目標硬體開發板用於運行操作系統和系統應用軟體,而目標板所用到的操作系統的內核編譯、應用程序的開發和調試則需要通過宿主PC機來完成(所以稱為交叉編譯)。雙方之間一般通過串口,並口或乙太網介面建立連接關系。
但在此我建議構建如下的交叉編譯環境,適合個人或研發小組使用:單獨拿出一台PC機(PII以上即可,就用以前淘汰的舊機器就可以),在該PC上安裝桌面的Linux操作系統(如Red Hat Linux 8.0及以上),可以採用默認的安裝選項(注意要包含ftp服務),這台PC作為Linux伺服器,除管理員以外,一般不直接讓其他人去操作。
將該Linux伺服器接入區域網,並新建一些合法用戶,以便其他的PC機(在此我們將其稱為工作站)的合法用戶能訪問到Linux伺服器。而其他的PC機(工作站)仍然使用Windows操作系統,原來幹啥繼續幹啥。
需要的軟體工具包括:
1、FTP客戶端程序(如Cuteftp,可到網上下載)。
2、Telnet工具(如SecureCRT,可到網上下載)。
3、移植到某一特定ARM平台的Linux操作系統內核源碼(一般由銷售商整理提供)。
4、GNU編譯工具,可由相關網站下載,或由銷售商整理提供。
在工作站安裝:
在某工作站PC上安裝FTP客戶端程序和Telnet工具,安裝完畢後應該可以在該工作站PC和Linux伺服器之間進行文件的傳輸,並在工作站PC可以通過Telnet登陸到Linux伺服器(可能需要將Linux伺服器的防火牆服務關閉才能完成)。
在Linux伺服器安裝:
將工作站PC上的Linux操作系統內核源碼壓縮包和GNU編譯工具通過FTP傳送到Linux伺服器的某個目錄(如合法的用戶目錄),然後在該目錄下解壓,並將GNU編譯工具安裝到默認的工作目錄即可,以上工作通過在工作站PC使用Telnet工具完成,而不需要在Linux伺服器上進行。
Linux操作系統內核的編譯:
Linux操作系統內核的編譯一般有一個比較固定的步驟,會根據MakeFile文件的不同而略有差異,可參考相關文檔,編譯的工作在工作站PC使用Telnet工具完成。
㈣ 交叉編譯環境包括哪些工具,它的作用是什麼
首先你要知道一個軟體可能需要在多個CPU架構的平台上運行,如ARM架構,X86架構等等。
假設你要開發一個軟體目標平台是ARM,那麼你可以選擇在PC上,即X86平台上進行開發,然後使用交叉編譯工具把軟體編譯成ARM架構版本,然後才能在ARM上運行,如果只是用一般的編譯工具鏈,那麼只能編譯在當前平台上運行。
至於編譯工具鏈有哪些,具體要看你的開發平台和目標平台,會對應不同的編譯工具。
㈤ 什麼是交叉編譯環境
交叉編譯(cross-compilation)是指,在某個主機平台上(比如PC上)用交叉編譯器編譯出可在其他平台上(比如ARM上)運行的代碼的過程。
交叉編譯這個概念的出現和流行是和嵌入式系統的廣泛發展同步的。我們常用的計算機軟體,都需要通過編譯的方式,把使用高級計算機語言編寫的代碼(比如 C代碼)編譯(compile)成計算機可以識別和執行的二進制代碼。
㈥ 如何搭建交叉編譯環境
交叉編譯環境就是在Windows下的東西拿到Linux下編譯運行吧,我個人是在Linux啟動了samba伺服器,然後將文件夾映射到Windows下,在Windows下使用vc 6.0編程序然後到Linux下編譯的。不知道能不能對你有些幫助。
下載的rpm包,可以使用rpm -ivh 包路徑進行安裝
㈦ 什麼是交叉編譯環境
交叉編譯(cross-compilation)是指,在某個主機平台上(比如PC上)用交叉編譯器編譯出可在其他平台上(比如ARM上)運行的代碼的過程。
㈧ 如何建立Linux系統下交叉編譯環境
基於Linux操作系統的應用開發環境一般是由目標系統硬體(開發板)和宿主PC機所構成。目標硬體開發板用於運行操作系統和系統應用軟體,而目標板所用到的操作系統的內核編譯、應用程序的開發和調試則需要通過宿主PC機來完成(所以稱為交叉編譯)。雙方之間一般通過串口,並口或乙太網介面建立連接關系。 但在此我建議構建如下的交叉編譯環境,適合個人或研發小組使用:單獨拿出一台PC機(PII以上即可,就用以前淘汰的舊機器就可以),在該PC上安裝桌面的Linux操作系統(如Red Hat Linux 8.0及以上),可以採用默認的安裝選項(注意要包含FTP服務),這台PC作為Linux伺服器,除管理員以外,一般不直接讓其他人去操作。 將該Linux伺服器接入區域網,並新建一些合法用戶,以便其他的PC機(在此我們將其稱為工作站)的合法用戶能訪問到Linux伺服器。而其他的PC機(工作站)仍然使用Windows操作系統,原來幹啥繼續幹啥。 需要的軟體工具包括: 1、FTP客戶端程序(如Cuteftp,可到網上下載)。 2、Telnet工具(如SecureCRT,可到網上下載)。 3、移植到某一特定ARM平台的Linux操作系統內核源碼(一般由銷售商整理提供)。
㈨ 建立交叉編譯環境需要配置哪些服務
基於Linux操作系統的應用開發環境一般是由目標系統硬體(開發板)和宿主PC機所構成。目標硬體開發板用於運行操作系統和系統應用軟體。
這種情況下,在 ARM 平台上進行本機編譯就不太可能了,這是因為一般的編譯工具鏈(compilation tool chain)需要很大的存儲空間,並需要很強的 CPU 運算能力。為了解決這個問題,交叉編譯工具就應運而生了。
比如,我們在 Windows 平台上,可使用 Visual C++開發環境,編寫程序並編譯成可執行程序。這種方式下,我們使用 PC 平台上的 Windows 工具開發針對 Windows 本身的可執行程序,這種編譯過程稱為 native compilation,中文可理解為本機編譯。
然而,在進行嵌入式系統的開發時,則不能直接編譯。運行程序的目標平台通常具有有限的存儲空間和運算能力,比如常見的 ARM 平台,其一般的靜態存儲空間大概是 16 到 32 MB,而 CPU 的主頻大概在 100MHz 到 500MHz 之間。