三、buildroot 添加 uboot 工程


3.1 加入工程前的准備工作

執行 make s3c24x0_defconfig,加入配置,然后執行 make menuconfig

System configuration 中關掉配置 Init system 和 /bin/sh

Target packages 中關掉配置 BusyBox

Filesystem images 中關掉配置 tar the root filesystem

3.2 uboot 配置

uboot 的配置與 交叉編譯工具鏈相似。

make menuconfig 進入配置菜單中,在 bootloader 中進行配置,選中 U-boot ,就可以打開 U-boot 的配置了:

  • Build system:uboot 的構建系統,早期的 uboot 並不像現在的版本一樣使用的是 kconfig,而是自定義的一套編譯機制。選擇 Kconfig
  • U-Boot Version:uboot 的版本,里面包含一個最新版本,或者選擇本地的壓縮包,或者是自定義版,或者自定義的 git 版本,或者自定義的 Mercurial 版本,或者自定義的 svn 版本。一般我們都會對 uboot 進行改動,所以一般都是自定義的版本,當然選擇公版的話,就得自己打補丁,對我自己玩的版本來說,我是選擇 git 版本,我只需要維護我自己的 git 上面的 uboot 的版本即可。
  • URL of custom repository:git 的地址,我填入的是自己的 git 版本地址。因為這個工程是私有的,需要輸入密碼和賬戶才能下載,所以不公開。這里填入的就是 git clone 后面的地址
  • U-Boot configuration:
    • Using an in-tree board defconfig file:使用 uboot 中的板defconfig文件
    • Using a custom board (def)config file:使用自定義板配置文件
    • 這兩個選項,一個是使用 uboot 中的 xxx_defconfig 文件,選擇這個后,后面需要提供一個uboot 中的 defconfig 文件,另一個選項,則是在 buildroot 中源碼樹中配置的。我的版本是選第一項
  •  U-Boot binary format:uboot 的二進制文件格式,一般都是選 bin 文件格式
  • 至於其他選項,根據自己的工程進行配置即可。

3.3 編譯

配置完成后,保存配置,進行測試編譯。

 

 

 編譯成功。

 

 修改下Makefile 下的 distclean,刪除掉 uboot,因為 uboot 是通過單獨的 git 工程進行管理的,所以不需要。

 

 執行 make update-defconfig 更新配置文件。執行 make distclean ,清除一下,上傳 git。

至於 Uboot 如何做前期修改之類的,查看博客:https://www.cnblogs.com/kele-dad/p/12791390.html


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM