九鼎创展论坛

标题: x4412&ibox项目实战1-uboot编译脚本解析 [打印本页]

作者: armeasy    时间: 2014-9-19 18:48
标题: x4412&ibox项目实战1-uboot编译脚本解析
x4412&ibox平台所有源码包统统可以使用一个mk脚本编译。编译uboot的脚本如下:
  1. build_uboot()
  2. {      
  3.          # Compiler uboot
  4.          cd ${BS_DIR_TOP}/uboot || return 1     //进入uboot根目录
  5.          make distclean || return 1        //清除缓存
  6.          make ${BS_CONFIG_BOOTLOADER_UBOOT} || return 1    //配置uboot config文件
  7.          make -j${threads} || return 1           //编译uboot

  8.          # Copy bootloader to release directory
  9.          cp -v ${BS_DIR_TOP}/uboot/ubootpak.bin ${BS_DIR_RELEASE} //将生成的映像拷贝到out/release目录
  10.          rm ${BS_DIR_TOP}/uboot/bl2.bin //移除bl2.bin
  11.          rm ${BS_DIR_TOP}/uboot/u-boot.bin   //移除u-boot.bin

  12.          # Copy some burnning script to release directory
  13.          cp -v ${BS_DIR_TOP}/uboot/x4412-irom-sd.sh ${BS_DIR_RELEASE}   //将烧写脚本拷到out/release目录
  14.          echo "^_^ uboot path: ${BS_DIR_RELEASE}/ubootpak.bin"    //打印编译成功的提示信息
  15.          return 0
  16. }
复制代码
       执行./mk –u指令时,上面的脚本得到执行,详细的解析见脚本注释。在三星提供的4412 uboot源码中,默认生成了四个映像文件,这意味着我们需要同时更新四个映像,在平时调试uboot时,势必会很不方便。有时候调试时,经常忘记烧写其中某个映像,而且四个映像经常容易混淆,如对应不上,将导致无法启动。为此,我们添加了将四个映像集成到一个映像的功能。默认执行上面的编译脚本后,四个映像将会打包成ubootpak.bin文件,我们只需烧写这一个文件就可以了。


作者: Beijixiong_433    时间: 2015-3-23 10:07
纸上得来终觉浅,绝知此事要躬行
作者: studylinuxlong    时间: 2015-9-16 13:55
原来你们改U-BOOT也是在三星的基础上改的,我以为是下载一个版本的U-BOOT自己改呢。谢谢啦!




欢迎光临 九鼎创展论坛 (http://bbs.9tripod.com/) Powered by Discuz! X3.2