1.U-boot 阶段
编译u-boot启动内核:
u-boot-sunxi$make distclean CROSS_COMPILE=arm-linux-gnueabihf-
u-boot-sunxi$make Cubietruck CROSS_COMPILE=arm-linux-gnueabihf-
将SD卡插入读卡器,挂载PC:
$sudo fdisk -l #看SD卡在哪个设备节点
$card=/dev/sdb #设置SD卡的设备名
$dd if=/dev/zero of=${card} bs=1M count=1 #暂认为清空
$sudo fdisk ${card} #设置卡分区
设置卡分区:
[email protected]:~/src/u-boot-sunxi# fdisk ${card}
Device contains neither a valid DOS partition table, nor Sun, SGI or OSF disklabel
Building a new DOS disklabel with disk identifier 0x911332e8.Changes will remain in memory only,
until you decide to write them.After that, of course, the previous content won‘t be recoverable.
Warning: invalid flag 0x0000 of partition tabl e 4 will be corrected by w(rite)
Command (m for help): n #键入n然后回车
Partition type:
p primary (0 primary, 0 extended, 4 free)
e extendedSelect (default p): #直接回车
Using default response p
Partition number (1-4, default 1): #直接回车
Using default value 1
First sector (2048-15278079, default 2048): #直接回车
Using default value 2048
Last sector, +sectors or +size{K,M,G} (2048-7759871, default 7759871): +64M
#键入+64M后回车,即分区大小为64M
Command (m for help): n #键入n然后回车
Partition type:
p primary (0 primary, 0 extended, 3 free)
e extendedSelect (default p): #直接回车
Using default response p
Partition number (1-4, default 2): #直接回车
Using default value 2
First sector (133120-15278079, default 133120): #直接回车
Using default value 133120
Last sector, +sectors or +size{K,M,G} (133120-15278079, default 15278079): #直接回车,即第二个分区使用全部剩余空间Using default value 15278079
格式化分区:
$mkfs.vfat ${card}1
#需要稍等片刻
$mkfs.ext4 ${card}2
然后写入bootloader:$cd u-boot-sunxi/$sudo dd if=u-boot-sunxi-with-spl.bin of=$card bs=1024 seek=8
拔出读卡器,将卡插进CT,插电启动,如显示:
表示成功将UBOOT 烧进SD卡!
2.内核启动阶段
$cd kernel-source/
$cp ../kernel_defconfig .config
$make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- -j8 uImage modules
断电,拔出SD,插回PC,正常会自动挂载,将编译内核生成的kernel-source/arch/arm/boot/uImage, 准备好的uEvn.txt boot.scr script.bin复制到第一分区。如下图:
拔出读卡器,将卡插进CT,插电启动,如显示:
表示成功内核烧录成功!
3.文件系统启动阶段
断电,拔出SD,插回PC,正常会自动挂载,将编译内核生成的modules安装第二分区
$sudo tar -C /media/6c024248-d606b-4e14-9bc7-db65c67a229a(SD卡第二分区地址名)/ --strip-components=1 -zxvf linaro-quantal-alip-20130422-342.tar.gz(文件系统包)
$sudo make INSTALL_MOD_PATH=/media/6c024248-d606b-4e14-9bc7-db65c67a229a(SD卡第二分区地址名) ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- modules_install
$sync
在第二分区生成如图下的文件:
拨出 SD 卡插进板子,插电启动板子,在终端可以看到进入系统 :
接 HDMI 线,转换显示屏 HDMI 输出,看到桌面,成功完成制作。
原文作者:SKY000
原文链接:http://forum.cubietech.com/forum.php?mod=viewthread&tid=2424
在CT制作卡系统