第一步:安装Ubuntu 放入CD或插上U盘,按下F12键,进入启动页面,选择相应启动方式。 进入安装界面,选择install Ubuntu选项,进行下一步。 进入设置页面,擦除原有系统,进行新的磁盘分区。进行磁盘分区时,注意三个分区必须有:1.swap ;2./(root目录);3./home(用户主目录)。采用英文版系统,默认选择就可以。 安装完成后,重启电脑 第二步:对电脑进行相应配置 参见网页:blackfin.uclinux.org.选择The Linux kernel/testing,到网页最低部,选择How to set up ubuntu 12.04 on regression PC,进入相应到配置文档。 配置过程中需要拷贝到文件,可以到其他机器上拷贝:ssh 10.99.29.* 拷贝之前先通过ifconfig查询一下自己电脑到IP,电脑之间到拷贝命令为scp,如果拷贝的是目录,采用 scp -r 命令进行拷贝。 配置完成后,对系统进行重启。 (注:配置过程一定要按照文档一步一步来,否则会出现一些问题) 第三步:建立workspace以及相应Code的下载 建立workspace,输入命令:mkdir workspace 所需要到的code都可以通过blackfin.uclinux.org这个主页进入sourceforge.net网页进行下载。 通过git clone 命令。 当使用git clone下来到工程中带有submodule时,初始的时候,submodule的内容并不会自动下载,需要 在buildroot目录下执行下面命令: git submodule init git submodule update 在完成相应的下载之后,需要查看branch,通过git branch来查看。 第四步:编译u-boot和uImage 在编译u-boot和uImage之前需要确定机器上面是否有toolchain, $ cd /opt/ $ ls 如果没有,需要去10.99.29.*上面进行拷贝。 $ ssh 10.99.29.* $ scp toolchain.tar.gz test@10.99.24.*:/opt 如果给出没有权限,需要在命令前面添加sudo 如果还是不能拷贝,进行如下操作 $ sudo scp toolchain.tar.gz test@10.99.24.*:/home/test $ exit $ sudo cp toolchain.tar.gz /opt/uClinux $ cd /opt/uClinux $ tar -xf toolchain.tar.gz (1)u-boot编译示例: $ cd u-boot $ make bf609-ezkit_config (要和所用板子对应,可以通过命令$ ls configs/bf 来找对应的配置文件) $ pex (需要在本机主目录下.bash_aliases文件中设置:alias pex='export PATH=/opt/uClinux/bfin-uclinux/bin:/opt/uClinux/bfin-elf/bin:/opt/uClinux/bfin-linux-uclibc/bin:$PATH') $ make $ cp u-boot.ldr /tftpboot (2)uImage编译示例 编译uImage时,如果是对同一个板子,测试不同的项目,在重新编译uImage时,需要执行一下make clean命令,清除之前到配置。 如果测试不同的板子时,需要对板子重新配置make *_defconfig,当然为了防止之前的测试影响到后面到测 试,可以使用make distclean,进行彻底清除。 $ cd buildroot $ make bf609-ezkit_defconfig(要和所用板子对应,可以通过命令$ ls configs/bf 来找对应的配置文件) $ make clean $ pex (确认安装的toolchain能被找到) $make menuconfig $make linux-menuconfig $ make $ cp output/images/uImage /tftpboot 注意:检测branch是否一致,并且符合板子要求。 在buildroot目录下面,运行 $ git branch $ cd linux/linux-kernel/ $ git branch 如果branch 不一致,需要将其切换到一致,下面命令是以blackfin为例。 $ git checkout master 编译uImage时,由于所测试到项目不同,就需要根据不同测试脚本进行相应到配置,配置过程在通常使用 到两个命令分别是:make menuconfig,make linux-menuconfig。这两个命令都是运行在make *_defconfig之后。 第五步:烧写u-boot 1.通过JTAG烧写 (1)先到10.99.24.51上拷贝jtag-gnice目录。里面有相应板子到flash文件。 (2)进入jtag-gnice目录下面,查看需要烧u-boot板子型号对应到flash文件,如:vi flash-bf537- stamp.jtag 。查看其要求到u-boot类型:是u-boot.ldr还是u-boot.bin (3)拷贝相应到u-boot 类型到 /tftpboot下面 (4)切换到/opt/uClinux/bfin-elf/bin目录下,运行下面命令: sudo ./bfin-jtag ~/jtag-gnice/flash-* (5)烧写完成后,打开minicom,设置相应IP(前提是可以boot起来),命令如下: set ipaddr 10.100.4.50 set serverip 10.100.4.174 saveenv 2.通过UART烧写 (1)拷贝相应u-boot.ldr.uart文件到/tftpboot目录下面 (2)查看相应板子到文档,根据文档把板子对应到硬件开关调到uart位置上 (3)运行下面命令: bfin-uclinux-ldr -l /tftpboot/u-boot.ldr.uart /dev/ttyS0 && kermit -l /dev/ttyS0 -b 57600 -C connect (前提是串口正常,设置正确。如果采用到是USB转串口,那么/dev/ttyS0 应改为/dev/ttyUSB0。) (4)烧写完成后,打开minicom,将硬件开关调回到原来位置,设置IP: set ipaddr 10.100.4.50 set serverip 10.100.4.174 运行命令run update 3.通过GDB烧写 通过GDB烧写u-boot需要先编译u-boot (1)通过git clone 命令拷贝u-boot的code。可以进入blackfin.uclinux.org网页进行相应下载。第三步已 经交代过了下载方法。 (2)进入下载到u-boot目录下面,编译u-boot (3)找到相应板子型号的配置文件:ls include/configs/bf (4)编译u-boot。 make bf609-ezkit_config make clean make (5)进入GDB:运行gdb前,需要运行./bfin-gdbproxy bfin,在/opt/uClinux/bfin-uclinux/bin/下面 cd /opt/uClinux/bfin-uclinux/bin/ sudo ./bfin-gdbproxy bfin (6)转换到u-boot目录下,进入gdb bfin-uclinux-gdb u-boot targer remote :2000 load arc/blackfin/cpu/init.elf c load c 打开minicom,看板子是否boot起来,如果起来,然后运行run update 6.脚本测试 打开minicom ,在板子正常起来后,输入命令:tftpboot uImage,把将要测试的项目对于uImage下载到 板子上,然后输入命令boot,将板子boot起来。 板子boot起来之后,查看相应测试项目的测试脚本,或者测试log,进行相应的测试工作。或者查看网页 blackfin.uclinux.org