Beaglebone Black——嵌入式linux系统u-boot编译

一、u-boot编译          首先是源码的来源,由于使用d
摘要由CSDN通过智能技术生成

          首先是U-boot源码的来源,由于使用的是TI的BBB板子,所以TI自然也提供了自己定制的u-boot源码,该源码就在TI-SDK包中有,另外该安装包中的u-boot版本是2013.10版本,内核版本为3.12.10,除了源码包还自带工具链。

TI-SDK最新版下载链接:http://software-dl.ti.com/sitara_linux/esd/AM335xSDK/latest/index_FDS.html

          当然,还有另外一个德国佬官方的u-boot源码,网站首页:http://www.denx.de/en/News/WebHome和git代码库:git://www.denx.de/git/u-boot.git。

          以官方u-boot为例进行u-boot的编译,进入源码根目录可以看到内容如下,

zhouyu@zhouyu-virtual-machine:~$ cd u-boot/
zhouyu@zhouyu-virtual-machine:~/u-boot$ ls
api        configs  dts       Kconfig      Makefile  snapshot.commit
arch       CREDITS  examples  lib          net       spl
board      disk     fs        Licenses     post      test
common     doc      include   MAINTAINERS  README    tools
config.mk  drivers  Kbuild    MAKEALL      scripts


其中打开根目录下的Makefile文件,可以查看到本源码的版本,如下图:

step1:在进行任何操作之前,先清除源码树,

zhouyu@zhouyu-virtual-machine:~/u-boot$ make distclean
  CLEAN   scripts/basic
  CLEAN   scripts/kconfig
  CLEAN   include/config include/generated spl
  CLEAN   .config include/autoconf.mk include/autoconf.mk.dep include/config.h
zhouyu@zhouyu-virtual-machine:~/u-boot$ 


step2:编译之前的配置工作

zhouyu@zhouyu-virtual-machine:~/u-boot$ make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- -j4 O=am335x_beaglebone_black am335x_boneblack_defconfig
  GEN     /home/zhouyu/u-boot/am335x_beaglebone_black/Makefile
  HOSTCC  scripts/basic/fixdep
  HOSTCC  scripts/kconfig/conf.o
  SHIPPED scripts/kconfig/zconf.tab.c
  SHIPPED scripts/kconfig/zconf.lex.c
  SHIPPED scripts/kconfig/zconf.hash.c
  HOSTCC  scripts/kconfig/zconf.tab.o
  HOSTLD  scripts/kconfig/conf
#
# configuration written to .config
#
#
# configuration written to spl/.config
#
zhouyu@zhouyu-virtual-machine:~/u-boot$ 

          make之后的第一个参数向Makefile指明了编译的目标体系结构,第二个参数向Makefile指明了使用哪个编译工具链,第四个参数告诉make程序,这个编译任务要分配4个线程来并行进行,以加快编译速度,通常这个数依据自己的处理器的核数来选择,一般选择2倍核数,第五个参数告诉Makefile编译时产生的中间文件以及最后的结果都存放在源码树根目录下的am335x_beaglebone_black文件夹中,这对于使用同一个源码树来编译多个不同配置的u-boot时是一个很好的选择。最后一个参数向Makefile指明了要使用哪个文件来进行具体的配置,最后所有的配置都将写进源码树根目录下面的.config文件中。

          而至于具体后面应该跟一个什么样的配置参数,可以从下图中寻找答案

         在源码树的configs文件夹中可以看到很多配置文件,我选择的是第一个红线框的配置文件。

 

step3:正式开始编译工作

zhouyu@zhouyu-virtual-machine:~/u-boot$ make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- -j4 O=am335x_beaglebone_black all
  GEN     /home/zhouyu/u-boot/am335x_beaglebone_black/Makefile
scripts/kconfig/conf --silentoldconfig Kconfig
scripts/kconfig/conf --silentoldconfig Kconfig
  CHK     include/config.h
  UPD     include/config.h
  GEN     include/autoconf.mk
  • 1
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值