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 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 15278079php
格式化分區:linux
$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
ubuntu
拔出讀卡器,將卡插進CT,插電啓動,如顯示:
ide
表示成功將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複製到第一分區。以下圖:ui
拔出讀卡器,將卡插進CT,插電啓動,如顯示:spa
表示成功內核燒錄成功!
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 輸出,看到桌面,成功完成製做。 component
原文做者:SKY000
原文連接:http://forum.cubietech.com/forum.php?mod=viewthread&tid=2424orm