这么长的标题主要是为了让人搜到,因为我找不到3在tf启动的文章感觉很坑,转载请声明来自 http://morning.com 希望可以帮助到你
Holy shit!!!!!!!
我周六编译Qt5准备周一安装的!结果被扫地阿姨拔掉了!!!昨天编译openCV结果空间不足!!!!!
妈蛋呢!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
好了!所以我要开始装Arch Linux了。。。
A20的小三上面装arch也是第一次尝试,至少我没在网上看到教程。。。摸索的同时写教程吧,恩,这边简单的东西就不写了,要装arch的也肯定是有点基础的。ok 现在开始。
First(最重要!!!!):买TF卡
首先jd买张tf卡——> 方便链接 <——-等第二天货到付款吧~~~ok 本教程结束。
Second:编译内核
- sudo apt-get install build-essential git u-boot-tools texinfo texlive ccache zlib1g-dev gawk bison flex gettext uuid-dev ia32-libs(这个我没装唉。。。) g++-arm-linux-gnueabihf(里面的软件装了最好 直接复制就好)
- mkdir pcDuino
- pcDuino(我是zsh所以能这样用,bash就cd吧)
- git clone https://github.com/pcduino/a20-kernel
- a20(tab)
- make
ok n hour之后你就在output得到 pcduino3_a20_kernel_livesuit_20140422.img 和pcduino3_a20_hwpack_20140422.tar.xz 了 当然你下次make的时候记得git pull
part 3 :Download system
下载系统你可以这样
- wget http://os.archlinuxarm.org/os/ArchLinuxARM-sun7i-latest.tar.gz
也可以下载uget和aria2进行窗口下载 我用这个的 多线程还蛮好的,先下着,我们进行下一步。
第四步 :做img
- dd if=/dev/zero of=MorningDuino.img bs=1M count=1800
/dev/zero和/dev/null相反,他是一个系统白洞,里面的0是无数的,覆盖式格式化也是从里面取的。格式化
- mke2fs -t ext4 MorningDuino.img
- mkdir /tmp/image
- sudo mount MorningDuino.img /tmp/image
- sudo tar xvf ArchLinuxARM-sun7i-latest.tar.gz -C /tmp/image
- rm -rf /tmp/image/lib/modules/*
- cd output
- tar xvf pcduino3_a20_hwpack_20140422.tar.xz
- sudo cp -rf rootfs/lib/modules/3.4.79+ /tmp/image/lib/modules
5!!!
http://archlinuxarm.org/platforms/armv7/allwinner/cubieboard-2
Second :以上都是曲折的道路。。。其实很简单。。。
先来装个交叉编译工具 from [email protected]
sudo add-apt-repository ppa:linaro-maintainers/toolchain
sudo apt-get update
sudo apt-get install gcc-arm-linux-gnueabi
当然还有
- sudo apt-get install build-essential git u-boot-tools texinfo texlive ccache zlib1g-dev gawk bison flex gettext uuid-dev ia32-libs(这个我没装唉。。。) g++-arm-linux-gnueabihf(里面的软件装了最好 直接复制就好)
然后下载 A20-kernel
- git clone https://github.com/pcduino/a20-kernel.git
差不多等一下就好,下载好了之后你可以打开makefile这个文件来看,当然很多东西看了很烦,只要看看有什么命令就可以了,ok,其他的你可以慢慢看的就会明白怎么回事了,先拉到最后我们会看到help!!!!这绝对是个好东西!!!然后就可以
Usage:
make hwpack - Default 'make'
make hwpack-install - Builds and installs hwpack and optional rootfs to sdcard
Arguments:
SD_CARD= – Target (ie. /dev/sdx)
ROOTFS= - Source rootfs (ie. rootfs.tar.gz)
make livesuit
make clean
make update
Optional targets:
make linux – Builds linux kernel
make linux-config - Menuconfig
make u-boot - Builds u-boot
make libs - Download libs
这就是不同的make选项,很强大啊,直接用默认的make就好了
等半天吧。。。你会在build/hwpack/bootloader(我忘了具体的了好吗?)里面找到uboot和spl,然后就可以开始刷啦,安全起见,先清空你tf的前1M from [email protected]
dd
if
=
/dev/zero
of=${card} bs=1M count=1
-
dd
if
=spl
/sunxi-spl
.bin of=${card} bs=1024 seek=8
dd
if
=u-boot.bin of=${card} bs=1024 seek=32
这里面还是uboot的位置还是32~
这样你的pcduino3就可以tf启动了~
3。扔arch
下载arch from http://os.archlinuxarm.org/os/sunxi/
- 先mount你的tf
- wget http://archlinuxarm.org/os/ArchLinuxARM-sun7i-latest.tar.gz
- tar -xf ArchLinuxARM-sun7i-latest.tar.gz -C mnt
完成。。。可以启动了 呀达!!!!
折腾了半天原来就是这么简单!!!让我去死吧!!!!!!
archlinux的文件系统不熟悉我要换回ubuntu!!!!!!
4!! 抛弃arch吧!!坑爹死了!!!
好了 现在抛弃arch 把v2的文件系统拷贝过来!!!
- /home/morningtzh/pcDuino/a20-kernel/build/pcduino3_hwpack/kernel
里面有uImage和script.bin 拷贝到tf卡上的boot 就好了
文件系统 好吧 我还是从v2拷的,之后去linaro看看怎么拿出来文件系统
好了。。。。
ok 现在说下u-boot / kernel / 文件系统的关系。他们关系很小!!!!!
好吧 听说pcDuino3不能用SD卡启动。。。我没被这个bug挡住得瑟下。。。难怪这么坑爹!!怎么都找不到SD卡启动教程!!!摔!!!uboot刷好了,kernel最好不要换。。。文件系统随便换貌似,恩 我的理解是这样的,所以arch和ubuntu就两个文件夹 想用哪个切换哪个就好 伪双系统,可能可以试着用一个普通的文件系统去chroot 就可以双系统切换了,反正我也不知道我说的对不对。。。