[经验] BeagleBone DIY 之继续继续 uboot 内核和文件系统的编译

damiaa   2012-10-18 20:33 楼主
一 , uboot(MLO and u-boot)编译:
参考手册:sitara-linuxsdk-sdg-05.05.00.00.pdf 105页
首先转到u-boot的目录
cd board-support/u-boot-2011.09-psp04.06.00.08
清理一下之前编译留下的临时文件
make CROSS_COMPILE=arm-arago-linux-gnueabi- ARCH=arm distclean
rm -rf ./am335x
然后就可以编译了,输入以下指令
make O=am335x CROSS_COMPILE=arm-arago-linux-gnueabi- ARCH=arm am335x_evm
如果修改
1,u-boot-2011.09-psp04.06.00.08/arch/arm/config.mk 中
CROSS_COMPILE ?= arm-arago-linux-gnueabi-  
2,uboot根目录下的Makefile 也添加相应的
CROSS_COMPILE ?= arm-arago-linux-gnueabi-  
以及 ARCH
=arm

然后输入

1,make distclean     
2, rm -rf ./am335x
然后就可以用以下命令编译U-boot:
make O=am335x am335x_evm
这样输入就方便点,不用每次输入那么多。

还一个方法就是写个SHELL文件XXX.SH把这些命令加进去

VI查找字符方法:命令行敲入:\xxxx
比如:/CROSS_COMPILE回车就到了要找的字符
很多其他详细信息可以参考:/ti-sdk-am335x-evm-05.05.00.00/board-support/u-boot-2011.09-psp04.06.00.08#
里的README

二 , 内核编译:
参考手册:sitara-linuxsdk-sdg-05.05.00.00.pdf 111页
参考手册:sitara-linuxsdk-sdg-05.05.00.00.pdf 108页
文件目录:ti-sdk-am335x-evm-05.05.00.00/board-support/linux-3.2.0-psp04.06.00.08.sdk#
清除内核编译结果
make ARCH=arm CROSS_COMPILE=arm-arago-linux-gnueabi- mrproper
make linux_clean
配置内核
make ARCH=arm CROSS_COMPILE=arm-arago-linux-gnueabi- am335x_evm_defconfig
make ARCH=arm CROSS_COMPILE=arm-arago-linux-gnueabi- menuconfig
51.jpg
编译内核
make ARCH=arm CROSS_COMPILE=arm-arago-linux-gnueabi- uImage
52.jpg

53.jpg
编译时间超过半个小时。
make ARCH=arm CROSS_COMPILE=arm-arago-linux-gnueabi- modules
缺省编译
make linux
安装模块:
make ARCH=arm CROSS_COMPILE=arm-arago-linux-gnueabi- INSTALL_MOD_PATH= modules_install
缺省:
make linux_install

编译最新内核包(ti-sdk-am335x-evm-05.05.00.00-Linux-x86-Install安装出来的)
/ti-sdk-am335x-evm-05.05.00.00/board-support/linux-3.2.0-psp04.06.00.08.sdk目录:
运行:
export PATH=$PATH:/usr/local/ti-sdk-am335x-evm/linux-devkit/bin
make ARCH=arm CROSS_COMPILE=arm-arago-linux-gnueabi- distclean
make ARCH=arm CROSS_COMPILE=arm-arago-linux-gnueabi- am335x-evm-defconfig
make ARCH=arm CROSS_COMPILE=arm-arago-linux-gnueabi- uImage
make ARCH=arm CROSS_COMPILE=arm-arago-linux-gnueabi- modules
发现编译通不过:
make[2]: *** No rule to make target `drivers/leds/leds-gpio.o', needed by `drivers/leds/built-in.o'.  Stop.
make[1]: *** [drivers/leds] Error 2
make: *** [drivers] Error 2
进去看不到leds-gpio.c 不知道为什么?有人试过吗?前面版本有这个问题吗?
问题解决:重新安装了一个代码文件包就好了。估计是写驱动时把哪里改错了。

三,文件系统编译:
参考手册:sitara-linuxsdk-sdg-05.05.00.00.pdf 230页后
文件所在目录/ti-sdk-am335x-evm-05.05.00.00/filesystem#
里面的两个文件解包

插曲:Ubuntu 10.04桌面版本 ,使用vi问题
最近安装了Ubuntu 10.04桌面版本 ,使用vi命令时,不能正常编辑文件,使用方向键时老是出现很多字母。 在网上找了个方法问题已经解决 分享一下:
只要依次执行以下两个命令即可完美解决Ubuntu下vi编辑器方向键变字母的问题。
  一.执行命令 sudo apt-get remove vim-common
  二.执行命令 sudo apt-get install vim
再试试Vi编辑器,就正常了。

[ 本帖最后由 damiaa 于 2012-10-21 17:04 编辑 ]

回复评论 (11)

加油 加油!
生活就是油盐酱醋再加一点糖,快活就是一天到晚乐呵呵的忙 =================================== 做一个简单的人,踏实而务实,不沉溺幻想,不庸人自扰
点赞  2012-10-18 21:06
顶起!!!
点赞  2012-10-19 03:57
顶起~
点赞  2012-10-19 07:59
其实TI的sdk中脚本写的挺不错的,不倾向于大家去修改Makefile
生活就是油盐酱醋再加一点糖,快活就是一天到晚乐呵呵的忙 =================================== 做一个简单的人,踏实而务实,不沉溺幻想,不庸人自扰
点赞  2012-10-19 09:38
是的。直接自己写个shell.把几句话连到一起运行。就不用每次敲了。
点赞  2012-10-19 10:07
好像没有半个小时吧,我编了10来分钟,uboot还没编,不知道怎么down到板子上去。
点赞  2012-11-1 21:34
.create_sdcard.sh批处理命令制作SD启动卡
点赞  2012-11-2 02:59
正在学习中
点赞  2013-11-3 14:24
早起的鸟人吃到虫了.AM335X都快2年了.
点赞  2013-11-16 14:08
感谢分享
点赞  2013-11-18 16:45
卤煮你好,请问你有am335x_evm_defconfig这个文件吗?或者你在哪里找到的
点赞  2014-7-26 19:35
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 京公网安备 11010802033920号
    写回复