移植最新版uboot到44B0板

从官网上下到最新的稳定的u-boo版本为u-boot-2010.09,移植时发现新版程序与网上广为流传的u-boot1.1.1还是有一些差别的,最主要的差别体现在添加新的板子名称的位置,以前之间在顶层目录的Makefile里添加即可,现在统一将板子名称、CPU型号等信息放到了文件boards.cfg中,所以如果要添加自己的开发板转有的驱动,需要首先在borads.cfg中添加相应信息(例如XXX_config)。

例如下面的红色字体部分即为我的开发板的配置信息,它表示在board目录下存在LT/LT44B0目录,此目录下存在与开发板相关的配置文件。

……

B2        arm    s3c44b0        -        dave
LT44B0        arm    s3c44b0        -        LT

……

然后,还需要在include/configs文件夹内存在一个 名为 LT44B0 _config.h的配置文件。这样使用 make XXX_config就可以完成对新添加的板子的配置了,其余部分的操作与旧版很类似,这里不再赘述,推荐阅读:u-boot移植完整版

 

编译u-boot的标准流程是:

make distclean      ——清除以前的配置信息和旧的编译输出文件

make XXX_config  ——配置手中的开发板

make                    ——开始执行编译

 

对了,最新的u-boot需要使用arm-linux-gcc编译器才可以,我使用arm-linux-gcc3.4.5编译通过,但是如果使用旧的arm-elf-gcc编译那么是无法编译通过的,似乎是某些编译选项不支持吧,具体原因我没有深究。在编译之前,首先需要设置两个环境变量,一个是PATH,一个是CROSS_COMPILE。具体操作如下:

1.

PATH=$PATH:/path/to/arm-linux-gcc/bin

上面的命令表示将arm-linux-gcc编译器的bin目录的绝对路径放到环境变量中去,这样在shell里直接输入arm-linux-gcc就可以启动gcc了,而不需要再指定其存储路径,测试路径是否添加成功的方法是输入命令: arm-linux-gcc --version,如果看到版本信息则证明编译器的路径已经添加到环境变量PATH中了,也可以通过echo $PATH命令查看PATH中的具体内容。

2.

CROSS_COMPILE=arm-linux-

export CROSS_COMPILE

上述两个命令向shell环境中输出了一个系统变量 CROSS_COMPILE,这样编译时就会自动选择arm-linux-相关的程序做交叉编译了。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值