版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、第九章第九章 內(nèi)容回顧內(nèi)容回顧嵌入式系統(tǒng)簡(jiǎn)介嵌 入式系統(tǒng)服務(wù)器和客戶端Subversion的基本操作 交叉編譯環(huán)境交叉編譯環(huán)境第十章本章目標(biāo)本章目標(biāo)嵌入式系統(tǒng)的開發(fā)環(huán)境是什么;能夠熟練使用掌握交叉編譯環(huán)境建立的方法;如何進(jìn)行交叉編譯。本章結(jié)構(gòu)本章結(jié)構(gòu)交叉開發(fā)簡(jiǎn)介交叉開發(fā)簡(jiǎn)介交叉編譯環(huán)境建立交叉編譯環(huán)境建立為什么需要交叉開發(fā)為什么需要交叉開發(fā)交叉編譯與鏈接交叉編譯與鏈接GNU交叉工具鏈交叉工具鏈交叉開發(fā)環(huán)境的組成要素交叉開發(fā)環(huán)境的組成要素開源開源GNU交叉開發(fā)環(huán)境交叉開發(fā)環(huán)境常用工具介紹常用工具介紹主要工具使用主要工具使用交叉調(diào)試交叉調(diào)試交叉工具鏈展開交叉工具鏈展開10.1.1 為什么需要交叉開
2、發(fā)為什么需要交叉開發(fā)臺(tái)式軟件從“源碼程序到“機(jī)器碼文件的過程:10.1.1 為什么需要交叉開發(fā)為什么需要交叉開發(fā)嵌入式軟件從“源碼程序到“機(jī)器碼文件的過程:10.1.1 為什么需要交叉開發(fā)為什么需要交叉開發(fā) 需要交叉開發(fā)環(huán)境Cross Development Environment的支持是嵌入式應(yīng)用軟件開發(fā)時(shí)的一個(gè)顯著特點(diǎn)交叉開發(fā)環(huán)境是指編譯、鏈接和調(diào)試嵌入式應(yīng)用軟件的環(huán)境它與運(yùn)行嵌入式應(yīng)用軟件的環(huán)境有所不同,通常采用宿主機(jī)目標(biāo)機(jī)模式。10.1.1 為什么需要交叉開發(fā)為什么需要交叉開發(fā) 交叉開發(fā)環(huán)境10.1.2 交叉開發(fā)環(huán)境的組成要素交叉開發(fā)環(huán)境的組成要素宿主機(jī) 目標(biāo)機(jī) 交叉工具一個(gè)編譯器,它
3、是編譯器工具鏈前端的一部分。一個(gè) 匯編器,它是編譯器工具鏈后端的一部分。 一個(gè) 鏈接器,它是編譯器工具鏈后端的另一部分。 用于處理可執(zhí)行程序和庫的一些基本工具,比如strings。10.1.3 交叉編譯與鏈接交叉編譯與鏈接 交叉編譯器和交叉鏈接器是能夠在宿主機(jī)上運(yùn)行,并且能夠生成在目標(biāo)機(jī)上直接運(yùn)行的二進(jìn)制代碼的編譯器和鏈接器例如在基于ARM體系結(jié)構(gòu)的gcc交叉開發(fā)環(huán)境中arm-linux-gcc是交叉編譯器arm-linux-ld是交叉鏈接器。 10.1.4 交叉調(diào)試交叉調(diào)試交叉調(diào)試Cross Debug又常常被稱為遠(yuǎn)程調(diào)試Remote Debug),是一種允許調(diào)試器以某種方式控制目標(biāo)機(jī)上被調(diào)
4、試進(jìn)程的運(yùn)行方式,并具有查看和修改目標(biāo)機(jī)上內(nèi)存單元、寄存器以及被調(diào)試進(jìn)程中變量值等各種調(diào)試功能的調(diào)試方式。 10.1.4 交叉調(diào)試交叉調(diào)試嵌入式系統(tǒng)的特點(diǎn):調(diào)試器和被調(diào)試進(jìn)程運(yùn)行在不同的機(jī)器上調(diào)試器通過某種通信方式與被調(diào)試進(jìn)程建立聯(lián)系,如串口、并口、網(wǎng)絡(luò)、DBM、JTAG或者專用的通信方式。 在目標(biāo)機(jī)上一般會(huì)具備某種形式的調(diào)試代理,它負(fù)責(zé)與調(diào)試器共同配合完成對(duì)目標(biāo)機(jī)上運(yùn)行著的進(jìn)程的調(diào)試。目標(biāo)機(jī)可能是某種形式的系統(tǒng)仿真器10.2 開源開源GNU交叉開發(fā)環(huán)境交叉開發(fā)環(huán)境 GNU目前已經(jīng)推出的軟件主要由Emacs功能強(qiáng)大的編輯環(huán)境,GCC性能優(yōu)異的多平臺(tái)的C,C+,F(xiàn)ortran編譯器和其他40多種
5、軟件。其中GCC的成功為GNU帶來了前所未有的影響。GCC是一種可以在11種硬件平臺(tái)上編譯出可執(zhí)行程序的超級(jí)編譯器,而且其執(zhí)行效率更是驚人,與一般的編譯器相比平均效率要高20%-30%。 10.3 GNU交叉工具鏈交叉工具鏈方法一 分步編譯和安裝交叉編譯工具鏈所需要的庫和源代碼,最終生成交叉編譯工具鏈。方法二 通過Crosstool腳本工具來實(shí)現(xiàn)一次編譯生成交叉編譯工具鏈方法三 直接通過網(wǎng)上.uk下載已經(jīng)制作好的交叉編譯工具鏈。構(gòu)建交叉編譯工具鏈方法10.3.1 交叉工具鏈展開交叉工具鏈展開arm-linux-gcc-2.95.3.tgz 2.95.3版本的
6、arm gcc交叉編譯工具,一般我們使用它編譯linux2.4.x版本的內(nèi)核源碼; 安裝 #tar xvfz arm-linux-gcc-2.95.3.tgz C /arm-linux-gcc-3.4.1.tgz 3.4.1版本的arm gcc交叉編譯工具,一般我們使用它編譯linux2.6.x版本的內(nèi)核源碼; #tar xvfz arm-linux-gcc-3.4.1.tgz C /執(zhí)行命令, 將把a(bǔ)rm-linux-gcc( 版本2.95.3 和3.4.1) 分別安裝到/usr/loca/arm/2.95.3 和/usr/loca/arm/3.4.1 目錄10.3.2 常用工具介紹常用工具
7、介紹名稱歸屬作用arm-linux-asbinutils編譯ARM匯編程序arm-linux-arbinutils把多個(gè).o合并成一個(gè).o或靜態(tài)庫(.a)arm-linuxran-libbinutils為庫文件建立索引,相當(dāng)于arm-linux-ar-sarm-linux-ldbinutils連接器(Linker), 把多個(gè).o或庫文件連接成一個(gè)可執(zhí)行文件arm-linux-objdumpbinutils查看目標(biāo)文件(.o)和庫(.a)的信息arm-linux-objcopybinutils轉(zhuǎn)換可執(zhí)行文件的格式arm-linux-stripbinutils去掉elf可執(zhí)行文件的信息. 使可執(zhí)行
8、文件變小arm-linux-readelfbinutils讀elf可執(zhí)行文件的信息arm-linux-gccgcc編譯.c或.S開頭的C程序或匯編程序arm-linux-g+gcc編譯c+程序10.3.3 主要工具使用主要工具使用arm-linux-gccarm-linux-ararm-linux-ranlibarm-linux-objdumparm-linux-readelfarm-linux-striparm-linux-copydump本章總結(jié)本章總結(jié)交叉開發(fā)簡(jiǎn)介交叉開發(fā)簡(jiǎn)介交叉編譯環(huán)境建立交叉編譯環(huán)境建立為什么需要交叉開發(fā)為什么需要交叉開發(fā)交叉編譯與鏈接交叉編譯與鏈接GNU交叉工具鏈交叉工具鏈交叉開發(fā)環(huán)境的組成要素交叉開發(fā)環(huán)境的組成要素開源開源GNU交叉開發(fā)環(huán)境交叉開發(fā)環(huán)境常用工具介紹常用工具介紹主要工具使用主要工具使用交叉調(diào)試交叉調(diào)試交叉工具鏈展開交叉工具鏈展開交叉編譯環(huán)境中包括交叉編譯環(huán)境中包括宿主宿主, ,目標(biāo)機(jī)的角色目標(biāo)機(jī)的角色arm-linux-gcc是交叉編譯器 arm-linux-ld是交叉鏈接器。實(shí)驗(yàn)實(shí)驗(yàn)任務(wù)1:交叉開發(fā)環(huán)境的建立 任務(wù)2:交叉開發(fā)工具的使用 任務(wù)任務(wù)1本卷須知提示1:注意交叉工具鏈建立在哪個(gè)目錄
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 住宅綠化養(yǎng)護(hù)合同
- 《榜樣9》觀后感:新時(shí)代共產(chǎn)黨人的精神力量
- 電影評(píng)論中背景設(shè)定的藝術(shù)分析
- 2024高中地理第2章區(qū)域可持續(xù)發(fā)展第6節(jié)區(qū)域工業(yè)化與城市化進(jìn)程-以珠江三角洲為例精練含解析湘教版必修3
- 2024高中物理第三章相互作用2彈力課后作業(yè)含解析新人教版必修1
- 2024高中語文第6單元墨子蚜第3課尚賢練習(xí)含解析新人教版選修先秦諸子蚜
- 2024高中語文第六課語言的藝術(shù)第4節(jié)入鄉(xiāng)問俗-語言和文化練習(xí)含解析新人教版選修語言文字應(yīng)用
- 2024高考化學(xué)一輪復(fù)習(xí)課練22化學(xué)反應(yīng)的方向與限度含解析
- 校長(zhǎng)在新學(xué)期第一次年級(jí)組長(zhǎng)會(huì)議上講話
- 小學(xué)一年級(jí)綜合與實(shí)踐教學(xué)計(jì)劃
- 榮譽(yù)證書打印模板word格式
- 營養(yǎng)學(xué)與健康
- 單位工會(huì)組織活動(dòng)方案(9篇)
- 人教版五年級(jí)數(shù)學(xué)下冊(cè)(全冊(cè))同步練習(xí)隨堂練習(xí)一課一練
- GB/T 29165.4-2015石油天然氣工業(yè)玻璃纖維增強(qiáng)塑料管第4部分:裝配、安裝與運(yùn)行
- 血液凈化十大安全目標(biāo)課件
- 鼻竇負(fù)壓置換療課件
- 國際森林日森林防火教育宣傳主題班會(huì)PPT模板
- 藥廠質(zhì)量管理部QA人員崗位設(shè)置表
- 劍橋國際少兒英語“第三級(jí)”單詞默寫表
- (精心整理)高中生物必修二非選擇題專題訓(xùn)練
評(píng)論
0/150
提交評(píng)論