本来一直在学习u-boot,感觉它足够强大和灵活,网上有很多资料,但我还只是掌握了皮毛,还不能够随意的应用. 公司里的板子主要是使用Redboot和Vxworks boot,本来是有些头痛的,这两个boot在网上的资料不多,公司的Flash还是SPI接口的,第一次接触,最基本的烧录方法都还没搞定,不过过程还是比想象的顺利,编译成功,主要是同事的一路指导,还有就是网上已经有了现成配置好的redboot.
下面是我实际操作中的步骤: 1、下载redboot-ap61.tar.gz,这个压缩包里不仅有源代码,还有MIPS的交叉编译器. linux/redboot-ap61.tar.gz">http://dl.meraki.net/linux/redboot-ap61.tar.gz 2、在Ubuntu 8.04里面编译的时候老是提示有下面的错误: tail: cannot open ` 2` for reading 一开始不得其解,只好转到redhat下编译,竟然可以通过,很郁闷,不过偶然在网上找到了解决办法: 在命令行设置: export _POSIX2_VERSION=199209 就可以顺利通过,原因好像是一些命令的版本不同导致. 后来又提示没有TCL,,临时又安装了一下TCL sudo apt-get install tcl 需要提醒的是一定要设定生成bin文件的目录,否则它会默认放置到/tftpboot,而根本又没有这个目录,会报错退出,我是写了一个简单的脚本,用来每次编译: #!/bin/sh make clean make AP_TYPE=ap51 TFTPPATH=/home/myhome/redboot-ap61/install FLASH_MB=2 DRAM_MB=8 ENET_PHY=icplus ap51 3、但是,编译好的文件,烧录进Flash后,无法正常启动. 碰巧在网上竟然找到了和我这个板子完全对应的、配置好的redboot http://rapidshare.com/files/112845340/redboot_cobra.tar.bz2.html 这个压缩包里没有交叉编译器,要用上面的那个编译器,设定一下路径: export PATH=$HOME/redhatboot-ap61/gnutool/bin:$PATH 还是使用上面的那个编译脚本,顺利在Ubuntu里通过. 4、烧录进Flash,顺利启动. |