首页 > 代码库 > 在CT制作卡系统

在CT制作卡系统

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}                                                        
#设置卡分区
设置卡分区
:
root@kubuntu:~/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   extended
Select (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,插电启动,如显示:
u-boot.png 

表示成功将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复制到第一分区。如下图:
内核文件.png

拔出读卡器,将卡插进CT,插电启动,如显示:

内核.png                                                                                                                                                                  
表示成功内核烧录成功


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
在第二分区生成如图下的文件:


文件系统.png         

拨出 
SD 
卡插进板子,插电启动板子,在终端可以看到进入系统 :


文件系统启动.png 


接 
HDMI 
线,转换显示屏 HDMI 输出,看到桌面,成功完成制作。


桌面启动.jpg 


原文作者:SKY000
原文链接:http://forum.cubietech.com/forum.php?mod=viewthread&tid=2424