RK3399从零制作ubuntu

  • LiuYang
  • LV5工程师
  • |      2017-08-21 21:32:56
  • 浏览量 2034
  • 回复:2
本帖最后由 LiuYang 于 2017-8-21 21:35 编辑 标题有点大了,其实没什么,就是按照Firefly的wiki的步骤来编译内核和制作文件系统。说实话,这个xubuntu实在是不习惯,还是3288的lubuntu好用,可惜升级到16.04之后就没有了,所以打算自己做一个14.04的来使用。当然,并不是说xubuntu不好,而是我用着感觉不顺手,另外连学习一下整个系统的制作过程。 这里要说明一下,RK3399的wiki中给出的编译内核和制作文件系统的方法完全正确,只是写的不太详细,应该把RK3288和RK3399的wiki结合起来看就没有问题了。这里我只是总结一下,把需要注意到的地方再重复一遍而已,需要注意的地方高亮显示。 一、编译内核: 1.下载内核源码:git clone https://TeeFirefly@gitlab.com/TeeFirefly/linux-kernel.git,这个不用多说,apt install git-core后就能获取; 2.下载编译工具:git clone https://TeeFirefly@gitlab.com/TeeFirefly/prebuilts.git,和源码一样的方法,要和内核在同一级目录下 3.编译: make ARCH=arm64 firefly_linux_defconfig make ARCH=arm64 rk3399-firefly-linux.img -j8 编译后在内核源码的目录下生成kernel.img和resource.img文件。 4.如果编译失败,无论报何种错误,都是因为编译时的工具和库没有安装完全,源代码本身是没有错误的。都需要装什么东西呢?参考:http://wiki.t-firefly.com/index.php/Firefly-RK3288/Build_android#.E5.87.86.E5.A4.87.E5.B7.A5.E4.BD.9C 这个就是RK3288的编译环境,把所有的东西都装上,保证编译成功。 二、制作文件系统: 1.下载http://cdimage.ubuntu.com/ubuntu ... 3-base-arm64.tar.gz。我下载的是14.04,这个随意啦。 2.安装虚拟机apt-get install qemu-user-static 3.解压文件: mkdir temp tar -xpf ubuntu-base-16.04.1-base-arm64.tar.gz -C temp 4.运行虚拟机,把下载的ubuntu在虚拟机中跑起来,至少第二步是要做的,否则运行不了: cp -b /etc/resolv.conf temp/etc/resolv.conf cp /usr/bin/qemu-aarch64-static temp/usr/bin/ 在temp的上级目录中执行chroot temp,此时就是运行在虚拟机中了。 5.配置虚拟机中的ubuntu: apt update apt upgrade #可以安装桌面,如apt install xubuntu-desktop,我偷懒了,这样生成的文件小,制作和烧写的过程快。 useradd -s '/bin/bash' -m -G adm,sudo firefly passwd firefly passwd root exit 退出后就回到主机的系统里了。 6.最后一步,生成rootfs文件: dd if=/dev/zero of=linuxroot.img bs=1M count=2048 sudo mkfs.ext4 linuxroot.img mkdir rootfs sudo mount linuxroot.img rootfs/ sudo cp -rfp temp/* rootfs/ sudo umount rootfs/ e2fsck -p -f linuxroot.img resize2fs -M linuxroot.img 完全按照wiki的步骤,没有什么特别说明的地方。 最后得到的文件就是这三个,用来烧写。 三、烧写: 这里我又偷了下懒,直接用RK3399的镜像解包得到需要的文件,然后替换烧写。 在高级功能里,选择RK3399的镜像文件,点解包。 完成后,会在烧写工具的文件夹下生成Output文件夹,解包后的东西都在这里。 剩下的事情就简单了,只用到了原包里的parameter,不用自己写了。 wiki中所说的修改parameter文件,其实就是这个文件。当然,使用原包的文件就不用修改。 把刚才生成的那三个文件添加进来,rootfs的地址是parameter中找到的。开始烧写,这个方法就不用再说了吧。 烧写后自动重启,系统跑起来了,没有安装桌面的系统。 (完)
  • 0
  • 收藏
  • 举报
  • 分享
我来回复

登录后可评论,请 登录注册

所有回答 数量:2
xdsnet 2018-01-05
写的比较
0   回复
举报
发布
IC爬虫 2017-12-01
这个还有点价值
0   回复
举报
发布
x
收藏成功!点击 我的收藏 查看收藏的全部帖子