u-boot使用了同Linux一樣的編譯配置方式,即使用kbuild系統(tǒng)來管理整體代碼的配置和編譯,通過defconfig來定制各種不同廠商的芯片bootloader二進(jìn)制程序。
編譯只需要注意通過環(huán)境變量或者命令行參數(shù)的方式引入一個(gè)交叉編譯工具即可:
- ? CROSS_COMPILE:定義交叉編譯工具鏈,可以是aarch64-linux-gnu-,arm-none-eabi-或者ppc-linux-gnu-等等;
- ? u-boot有幾個(gè)配置是需要由對應(yīng)board配置的。SYS_ARCH,SYS_CPU,SYS_SOC,SYS_BOARD,SYS_VENDOR,SYS_CONFIG_NAME;
- ? 一般在board/vendor/board/Kconfig中可全部定義,部分SYS_CPU,SYS_SOC也可以在arch/xxx/Kconfig中定義,根據(jù)這幾個(gè)配置即可確定使用的cpu架構(gòu),廠商,板級信息,soc信息。
- ? Makefile會自動根據(jù)上述信息進(jìn)入對應(yīng)目錄組織編譯規(guī)則,一般如果沒有自己對應(yīng)的這些board信息,需要自己在對應(yīng)目錄建立這些Kconfig和在configs中建立defconfig。
在configs目錄中保存了uboot中所有支持的board配置,比如要使用rk3399的evb板的配置信息使用如下方式即可編譯出來:
make CROSS_COMPILE=aarch64-linux-gnu- evb-rk3399_defconfig
make
如果沒有對應(yīng)的defconfig可以找一個(gè)與自己板級信息類似的defconfig生成一個(gè).config,再通過menuconfig來完成自己board的配置,并最后通過savedefconfig保存為自己board的defconfig:
make CROSS_COMPILE=aarch64-linux-gnu- evb-rk3399_defconfig
make menuconfig
make savedefconfig
cp defconfig configs/my_defconfig
聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。
舉報(bào)投訴
相關(guān)推薦
從本文開始,將陸續(xù)推送“手把手教你移植U-boot”系列文章,目標(biāo)是由淺入深地講解U-boot的工作流程、原理、配置方法和移植方法,手把手教你完成U-boot的移植工作,默認(rèn)硬件開發(fā)平
發(fā)表于 07-14 16:52
?2867次閱讀
在軟件開發(fā)過程中我們經(jīng)常遇到用 Patch 來傳遞和更新代碼的場景。本文以一個(gè)端到端的例子來演示在 Petalinux 使用過程中,如何給 u-boot 的源碼生成 Patch 并在 Petalinux 中編譯。
發(fā)表于 12-04 16:26
?989次閱讀
哪位大大有最新的u-boot源碼啊,現(xiàn)在正在學(xué)習(xí)u-boot,想要一份源碼,怎奈官方下載地址不能下。誰有發(fā)一下。804569645@qq.com非常感謝
發(fā)表于 07-12 16:11
[tr=transparent]MY-IMX6-EK200用busybox編譯自己的u-boot和kernel源碼 [/tr][tr=transparent][/tr][tr=transparent
發(fā)表于 05-25 11:39
(myimx6) Defconfig name 編譯的配置文件myimx6_defconfig【*】U-Boot(myimx6ek200-6q) U-Boot board name
發(fā)表于 06-26 14:08
bootloader 開發(fā)是嵌入式系統(tǒng)必不可少而且十分重要的部分,U-Boot 為功能強(qiáng)大的bootloader 開發(fā)軟件。本文詳細(xì)分析了U-Boot 的啟動流程,并結(jié)合其源碼,闡述了U-Bo
發(fā)表于 09-01 16:34
?27次下載
In this paper, the way of porting U-Boot to Control Computer Based MPC8349 will beintroduced
發(fā)表于 01-25 15:45
?13次下載
u-boot的Makefile分析
U-BOOT是一個(gè)LINUX下的工程,在編譯之前必須已經(jīng)安裝對應(yīng)體系結(jié)構(gòu)的交叉編譯環(huán)境,這里只針對ARM,編譯
發(fā)表于 05-17 09:16
?2063次閱讀
U-Boot,全稱 Universal Boot Loader,是遵循GPL條款的開放源碼項(xiàng)目。從FADSROM、8xxROM、PPCBOOT逐步發(fā)展演化而來。其源碼目錄、
發(fā)表于 07-30 09:17
?1178次閱讀
演化而來。其源碼目錄、編譯形式與Linux內(nèi)核很相似,事實(shí)上,不少U-Boot源碼就是根據(jù)相應(yīng)的Linux內(nèi)核源程序進(jìn)行簡化而形成的,尤其是一些設(shè)備的驅(qū)動程序,這從
發(fā)表于 10-14 11:17
?3560次閱讀
U-Boot是目前廣泛使用的嵌入式操作系統(tǒng)通用引導(dǎo)程序,具有功能豐富強(qiáng)大,支持多種操作系統(tǒng)和CPU體系,易于功能擴(kuò)展和移植,源碼開放等多種優(yōu)點(diǎn)。U-Boot,全稱 Universal Boot
發(fā)表于 08-29 05:02
?3726次閱讀
為什么會有這篇文章,因?yàn)樾∩?b class='flag-5'>u-boot源碼的設(shè)計(jì)所吸引了(源碼對命令的處理過程)。自定義u-boot命令屬于u-boot
發(fā)表于 08-08 14:46
?1100次閱讀
介紹 U-Boot 的編譯打包、基本配置、常用命令的使用、基本調(diào)試方法等, 為 U-BOOT 的移植及應(yīng)用開發(fā)提供了基礎(chǔ)。
發(fā)表于 03-06 10:28
?1311次閱讀
編譯U-boot,操作如下: 拷貝配置文件 cp configs/ss524v100_deconfig.config 配置編譯環(huán)境 make
發(fā)表于 08-22 10:31
?739次閱讀
u-boot armv8鏈接腳本 在進(jìn)行源碼分析之前,首先看看u-boot的鏈接腳本,通過鏈接腳本可以從整體了解一個(gè)u-boot的組成,并且可以在啟動分析中知道某些邏輯是在完成什么工作
發(fā)表于 12-07 11:19
?662次閱讀
評論