資料介紹
Buildroot 是一個(gè)包含Makefile 和修補(bǔ)程序(patch)的集合,這個(gè)集合可以使你很容易的為你的目標(biāo)構(gòu)建交叉工具鏈(cross-compilationtoolchain),根文件系統(tǒng)(root filesystem)以及Linux 內(nèi)核映像(kernelimage)。Buildroot 可以獨(dú)立的實(shí)現(xiàn)其中的一個(gè)或幾個(gè)功能。
Buildroot 對(duì)于從事嵌入式系統(tǒng)(embeddedsystems)開發(fā)的人很有幫助。通常嵌入式系統(tǒng)使用的處理器(processor)不同于在PC 跑的x86 架構(gòu)的CPU。嵌入式系統(tǒng)可以使用IBM 公司的PowerPC,可以是RISC 指令的MIPS(包括龍芯II),也可以是ARM 處理器,等等。
編譯工具鏈(compilation toolchain)是為你的操作系統(tǒng)編譯程序的工具的集合。主要包括編譯器(compiler,比如說(shuō)gcc),包括匯編器(assembler)和鏈接器(linker)的二進(jìn)制工具集(binaryutils)(在我們的linux 系統(tǒng)中通常為binutils),C 標(biāo)準(zhǔn)類庫(kù)(比如GNU Libc、uClibc 或者dietlibc)。
你用來(lái)做開發(fā)的電腦上安裝的OS 通常已經(jīng)包含一個(gè)默認(rèn)的編譯工具鏈,通過(guò)它便已出來(lái)的程序可以在你的系統(tǒng)上運(yùn)行。如果當(dāng)你使用PC,你的編譯工具鏈工作在x86 架構(gòu)的處理器上,產(chǎn)生的程序也是在x86 處理器上使用的。在大多數(shù)Linux 系統(tǒng)中,交叉工具鏈采用GNU libc(glibc)[2]作為標(biāo)準(zhǔn)類庫(kù)。這種編譯工具鏈通常被稱為“主機(jī)編譯工具鏈(hostcompilation toolchain)。你用來(lái)做開發(fā)工作的電腦上跑的系統(tǒng)被稱作“主機(jī)系統(tǒng)(hostsystem)”。這個(gè)編譯工具鏈由你的Linux 發(fā)行版(distribution)的操作系統(tǒng)自帶,而Buildroot 則于你的操作系統(tǒng)無(wú)關(guān)(但使用Buildroot 建立的交叉工具鏈和其他工具可以在你的主機(jī)系統(tǒng)執(zhí)行)。
?
正如前面所述,編譯工具鏈由你的系統(tǒng)所提供,運(yùn)行在你的系統(tǒng)上,產(chǎn)生你系統(tǒng)所用處理器可以執(zhí)行的代碼文件。由于你的嵌入式系統(tǒng)的處理器通常與你的開發(fā)主機(jī)不同,你需要一個(gè)交叉編譯(cross-compilation)工具鏈,這工具鏈運(yùn)行在你的開發(fā)主機(jī)上,但產(chǎn)生你的嵌入式目標(biāo)主機(jī)(目標(biāo)處理器)的可執(zhí)行代碼。比如你的開發(fā)主機(jī)系統(tǒng)采用x86 處理器,而你的嵌入式目標(biāo)系統(tǒng)處理器是ARM 的,普通的編譯工具鏈在你的開發(fā)主機(jī)上只能產(chǎn)生x86 處理器的執(zhí)行代碼,而交叉編譯工具鏈則可以在你的開發(fā)主機(jī)上產(chǎn)生ARM 處理器的可執(zhí)行代碼。
即使你的嵌入式系統(tǒng)上使用的同樣是x86 處理器,你同樣可以使用Buildroot,因?yàn)橐韵聝蓚€(gè)原因:
你開發(fā)主機(jī)上使用的編譯工具鏈GNU Libc 是一個(gè)完整的C 標(biāo)準(zhǔn)庫(kù),但它很大。而在你的嵌入式目標(biāo)系統(tǒng)上除了使用GNU Libc,你可以使用uClibc,它是一個(gè)裁剪的C 標(biāo)準(zhǔn)庫(kù),很小。當(dāng)你想使用uClibc 的時(shí)候,你需要一個(gè)編譯工具鏈?zhǔn)褂盟鳛殒溄訋?kù)產(chǎn)生目標(biāo)代碼。Buildroot 可以為你做到這一點(diǎn)。
Buildroot 自動(dòng)使用所用可能用到的工具(比如busybox)構(gòu)建根文件系統(tǒng)。與手動(dòng)操作相比,更容易。由于你可以手動(dòng)使用gcc、binutils、uClibc 和其他工具進(jìn)行編譯,你一定很好奇為什么非得用Buildroot 這個(gè)工具呢。你當(dāng)然可以使用手動(dòng)設(shè)置,但處理每一個(gè)配置選項(xiàng)以及由gcc 或binutils 版本所產(chǎn)生問(wèn)題都是非常耗時(shí)和無(wú)聊的。Buildroot 通過(guò)使用Makefile 自動(dòng)處理這些問(wèn)題,而且還對(duì)任一個(gè)gcc和binutils 版本都有補(bǔ)丁集合以使得它可以在大多數(shù)Linux 版本中工作。
此外,Buildroot 里面提供了一個(gè)基礎(chǔ)結(jié)構(gòu),用于再現(xiàn)你構(gòu)建內(nèi)核交叉工具鏈和嵌入式根文件系統(tǒng)的過(guò)程。當(dāng)需要補(bǔ)丁、更新或當(dāng)其他人接手這個(gè)項(xiàng)目時(shí),構(gòu)建過(guò)程能夠重現(xiàn)是很有用處的。
本手冊(cè)主要介紹使用buildroot 定制EVB-P6UL 的根文件系統(tǒng),并實(shí)現(xiàn)文件系統(tǒng)的移植到QSPI Nor Flash/eMMC/Nand Flash。
- android開發(fā)板那種好,學(xué)嵌入式用哪個(gè)開發(fā)板好?嵌入式開發(fā)板推薦
- 理解嵌入式開發(fā)中BootLoader、內(nèi)核和根文件系統(tǒng)之間的關(guān)系
- 如何入門嵌入式?ARM嵌入式開發(fā)板學(xué)習(xí)方法步驟
- 嵌入式開發(fā)板掛載linux上文件夾
- 嵌入式Linux系統(tǒng)移植-(Linux文件系統(tǒng))
- 嵌入式Linux開發(fā)使用NFS掛載根文件系統(tǒng)
- EVB-P6UL嵌入式工控評(píng)估板的用戶手冊(cè)免費(fèi)下載 8次下載
- EVB-P6UL嵌入式開發(fā)板WIFI驅(qū)動(dòng)簡(jiǎn)易移植及測(cè)試的詳細(xì)資料說(shuō)明 6次下載
- 學(xué)習(xí)ARM開發(fā)板嵌入式開發(fā)板的入門實(shí)驗(yàn)手冊(cè)_v1.0 15次下載
- AG嵌入式開發(fā)板 19次下載
- 嵌入式Linux文件系統(tǒng)的研究與應(yīng)用
- 用Busybox制作嵌入式Linux根文件系統(tǒng)
- 適合嵌入式Linux應(yīng)用的文件系統(tǒng)—— JFFS
- 適合嵌入式Linux應(yīng)用的文件系統(tǒng)—— JFFS
- 嵌入式Linux系統(tǒng)開發(fā)基礎(chǔ)
- 嵌入式開發(fā)必備-RK3562演示Linux常用系統(tǒng)查詢命令(上)觸覺智能出品 117次閱讀
- 嵌入式開發(fā)的產(chǎn)品有哪些_嵌入式開發(fā)的流程 1.1w次閱讀
- 基于Buildroot的Linux系統(tǒng)構(gòu)建之根文件系統(tǒng) 2620次閱讀
- 基于Yocto Project的定制嵌入式Linux產(chǎn)品設(shè)計(jì)淺析 1w次閱讀
- 基于嵌入式Linux系統(tǒng)的Bootloader模型在MIPS64上的移植設(shè)計(jì)淺析 942次閱讀
- 基于PXA255開發(fā)板外圍字符設(shè)備的嵌入式Linux字符設(shè)備驅(qū)動(dòng)設(shè)計(jì)與應(yīng)用 1199次閱讀
- 學(xué)習(xí)嵌入式linux系統(tǒng)開發(fā),文件類型一定要分清 895次閱讀
- 嵌入式開發(fā)好學(xué)嗎_嵌入式開發(fā)職業(yè)發(fā)展方向是什么 9207次閱讀
- 什么是嵌入式開發(fā)板_學(xué)嵌入式用什么開發(fā)板 7206次閱讀
- 嵌入式C實(shí)現(xiàn)延時(shí)程序的不同變量的區(qū)別 幾種Linux嵌入式開發(fā)環(huán)境的簡(jiǎn)單介紹 1673次閱讀
- 嵌入式開發(fā)工具有哪些_五款嵌入式開發(fā)工具推薦 4w次閱讀
- 學(xué)嵌入式開發(fā)入門_學(xué)嵌入式開發(fā)需要看哪些書籍 2.5w次閱讀
- 嵌入式開發(fā)環(huán)境的搭建 8548次閱讀
- 嵌入式開發(fā)環(huán)境介紹,嵌入式文件系統(tǒng)要求分析 1201次閱讀
- 基于zynq的Linux根文件系統(tǒng)生成 5841次閱讀
下載排行
本周
- 1TC358743XBG評(píng)估板參考手冊(cè)
- 1.36 MB | 330次下載 | 免費(fèi)
- 2開關(guān)電源基礎(chǔ)知識(shí)
- 5.73 MB | 6次下載 | 免費(fèi)
- 3100W短波放大電路圖
- 0.05 MB | 4次下載 | 3 積分
- 4嵌入式linux-聊天程序設(shè)計(jì)
- 0.60 MB | 3次下載 | 免費(fèi)
- 5基于FPGA的光纖通信系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
- 0.61 MB | 2次下載 | 免費(fèi)
- 6基于FPGA的C8051F單片機(jī)開發(fā)板設(shè)計(jì)
- 0.70 MB | 2次下載 | 免費(fèi)
- 751單片機(jī)窗簾控制器仿真程序
- 1.93 MB | 2次下載 | 免費(fèi)
- 8基于51單片機(jī)的RGB調(diào)色燈程序仿真
- 0.86 MB | 2次下載 | 免費(fèi)
本月
- 1OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費(fèi)
- 2555集成電路應(yīng)用800例(新編版)
- 0.00 MB | 33564次下載 | 免費(fèi)
- 3接口電路圖大全
- 未知 | 30323次下載 | 免費(fèi)
- 4開關(guān)電源設(shè)計(jì)實(shí)例指南
- 未知 | 21548次下載 | 免費(fèi)
- 5電氣工程師手冊(cè)免費(fèi)下載(新編第二版pdf電子書)
- 0.00 MB | 15349次下載 | 免費(fèi)
- 6數(shù)字電路基礎(chǔ)pdf(下載)
- 未知 | 13750次下載 | 免費(fèi)
- 7電子制作實(shí)例集錦 下載
- 未知 | 8113次下載 | 免費(fèi)
- 8《LED驅(qū)動(dòng)電路設(shè)計(jì)》 溫德爾著
- 0.00 MB | 6653次下載 | 免費(fèi)
總榜
- 1matlab軟件下載入口
- 未知 | 935054次下載 | 免費(fèi)
- 2protel99se軟件下載(可英文版轉(zhuǎn)中文版)
- 78.1 MB | 537796次下載 | 免費(fèi)
- 3MATLAB 7.1 下載 (含軟件介紹)
- 未知 | 420026次下載 | 免費(fèi)
- 4OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費(fèi)
- 5Altium DXP2002下載入口
- 未知 | 233046次下載 | 免費(fèi)
- 6電路仿真軟件multisim 10.0免費(fèi)下載
- 340992 | 191185次下載 | 免費(fèi)
- 7十天學(xué)會(huì)AVR單片機(jī)與C語(yǔ)言視頻教程 下載
- 158M | 183278次下載 | 免費(fèi)
- 8proe5.0野火版下載(中文版免費(fèi)下載)
- 未知 | 138040次下載 | 免費(fèi)
評(píng)論