移植前需要在宿主機上建立如圖所示的arm的交叉編譯環(huán)境,建立交叉編譯環(huán)境的目的在于使用普通的pc作為宿主機來調(diào)試目標(biāo)開發(fā)板。建立arm的交叉編譯環(huán)境主要用到的開發(fā)工具有:binutils、gcc、glibc。
圖 交叉編譯環(huán)境 其中,binutils是二進制文件的處理工具,它主要包含了一些輔助開發(fā)工具,例如,objdump顯示反匯編碼、nm列出符號表、readelf顯示elf文件信息及段信息、strip將不必要的代碼去掉以減少可執(zhí)行文件大小等。這些工具在嵌入式開發(fā)初期,尤其是在移植調(diào)試操作系統(tǒng)時非常有用?! cc是編譯工具,用來編譯內(nèi)核代碼的工具,使用它可以編譯匯編語言和c語言的程序,生成arm的代碼?! libc是鏈接和運行庫,它的編譯需要指定編譯器為arm交叉編譯器,否則編譯出的glibc代碼將會是同時有arm和x86代碼的混合體。所有需要用到的工具都可以通過下載源碼自行編譯,然后在宿主機上進行安裝,就可以建立起arm的交叉編譯環(huán)境。 下面介紹如何利用pclibc構(gòu)造一個目標(biāo)平臺為arm的交叉編譯器,下面是具體的步驟。
這樣就完成了一個交叉編譯器的構(gòu)造。為了使用方便,最好在用戶的shell程序里面加八交叉編譯器的路徑。具體方法是編輯/root/.bashrc,加入以下行:
以上信息表明已經(jīng)成功安裝好arm-linux-gcc了。實際上除了arm-linux-gcc,以上過程同時還安裝了arm-linux-ld(連接器)、arm-linux-ar(匯編器)等工具??梢栽诿钚心J较螺斎耄rm-linux-,此時按鍵盤上的tab鍵查看所有以arm-linux-開頭的可執(zhí)行文件。
歡迎轉(zhuǎn)載,信息來源維庫電子市場網(wǎng)()