Ubuntu16.04编译roc-rk3328-cc
安装以下包:
sudo apt-get install bc bison build-essential curl \device-tree-compiler dosfstools flex gcc-aarch64-linux-gnu \gcc-arm-linux-gnueabihf gdisk git gnupg gperf libc6-dev \libncurses5-dev libpython-dev libssl-dev libssl1.0.0 \lzop mtools parted repo swig tar zip
创建工程目录:
mkdir ~/proj/roc-rk3328-cc
cd ~/proj/roc-rk3328-cc
下载 Linux SDK:
# U-Boot
git clone -b roc-rk3328-cc https://github.com/FireflyTeam/u-boot
# Kernel
git clone -b roc-rk3328-cc https://github.com/FireflyTeam/kernel --depth=1
# Build
git clone -b debian https://github.com/FireflyTeam/build
# Rkbin
git clone -b master https://github.com/FireflyTeam/rkbin
开发板编译配置在:
build/board_configs.sh
编译 U-Boot:
./build/mk-uboot.sh roc-rk3328-cc
输出:
out/u-boot/
├── idbloader.img
├── rk3328_loader_ddr786_v1.06.243.bin
├── trust.img
└── uboot.img
编译 kernel:
./build/mk-kernel.sh roc-rk3328-cc
输出:
out/
├── boot.img
└── kernel├── Image└── rk3328-roc-cc.dtb
自定义内核配置和更新默认配置:
# 这非常重要!
export ARCH=arm64
cd kernel
# 首先使用默认配置
make fireflyrk3328_linux_defconfig
# 自定义你的 kernel 配置
make menuconfig
# 保存为默认配置
make savedefconfig
cp defconfig arch/arm64/configs/fireflyrk3328_linux_defconfig
编译Ubuntu根文件系统
安装依赖包:
sudo apt-get install qemu qemu-user-static binfmt-support debootstrap
下载 Ubuntu core:
wget -c http://cdimage.ubuntu.com/ubuntu-base/releases/16.04.1/release/ubuntu-base-16.04.1-base-arm64.tar.gz
创建一个大小为 1000M 的根文件系统映像文件,并使用 Ubuntu 的基础包去初始化:
fallocate -l 1000M rootfs.img
sudo mkfs.ext4 -F -L ROOTFS rootfs.img
mkdir mnt
sudo mount rootfs.img mnt
sudo tar -xzvf ubuntu-base-16.04.1-base-arm64.tar.gz -C mnt/
sudo cp -a /usr/bin/qemu-aarch64-static mnt/usr/bin/
Chroot 到新的文件系统中去并初始化:(可先不修改本快内容)
sudo chroot mnt/
# 这里可以修改设置
USER=firefly
HOST=firefly
# 创建用户
useradd -G sudo -m -s /bin/bash $USER
passwd $USER
# 输入密码# 设置主机名和以太网
echo $HOST > /etc/hostname
echo "127.0.0.1 localhost.localdomain localhost" > /etc/hosts
echo "127.0.0.1 $HOST" >> /etc/hosts
echo "auto eth0" > /etc/network/interfaces.d/eth0
echo "iface eth0 inet dhcp" >> /etc/network/interfaces.d/eth0
echo "nameserver 127.0.1.1" > /etc/resolv.conf
# 使能串口
ln -s /lib/systemd/system/serial-getty\@.service /etc/systemd/system/getty.target.wants/serial-getty@ttyS0.service
# 安装包
apt-get update
apt-get upgrade
apt-get install ifupdown net-tools network-manager
apt-get install udev sudo ssh
apt-get install vim-tiny
卸载文件系统:
sudo umount rootfs/
打包原始固件
目录将包含以下文件:
$ tree out
out
├── boot.img
├── kernel
│ ├── Image
│ └── rk3328-roc-cc.dtb
├── rootfs.img
└── u-boot├── idbloader.img├── rk3328_loader_ddr786_v1.06.243.bin├── trust.img└── uboot.img
打包原始固件:
./build/mk-image.sh -c rk3328 -t system -r out/rootfs.img
最终打包成 out/system.img
参考文档:http://wiki.t-firefly.com/zh_CN/ROC-RK3328-CC/intro.html
Ubuntu16.04编译roc-rk3328-cc相关推荐
- Ubuntu16.04编译RK3399:make kernel.img error
RK3399开源资料: http://www.t-firefly.com/doc/product/info/id/100.html 1.问题: ubuntu16.04编译内核Kernel出现错误: ...
- Ubuntu16.04编译高博的ORBSLAM2_with_pointcloud_map详细过程
我在编译过程中主要参考了以下几篇博客: Ubuntu16.04编译高博的ORBSLAM2_with_pointcloud_map_Andyoyo007的博客-CSDN博客编译高博ORBSLAM2_wi ...
- ubuntu16.04 编译opencv4和opencv_contrib
ubuntu16.04 编译opencv4和opencv_contrib 下载源码 安装最新的cmake 使用cmake-gui配置cmake文件 make && install 添加 ...
- Ubuntu16.04编译android6.0.1源码记录
目录 目录 一.安装环境 二.下载源码 1.下载repo 2.初始化repo 3.同步源代码 关于驱动 三.编译源码 四.导入源码到AS 五.刷入真机 六.修改源码 总结: 3.同步源代码 关于驱动 ...
- Ubuntu16.04编译poco库
Ubuntu16.04编译poco库 概述 下载 编译 解压 编译 完整编译 部分编译 编译 安装 参考文章 概述 Poco C++库是一系列C++类库,类似Java类库,.Net框架,Apple的C ...
- linux ubuntu16.04 编译opencv教程(没编过,有时间再弄,推流不用opencv也行的)
文章目录 下源码 编译 配置opencv环境 下源码 https://github.com/opencv/opencv/releases/tag/4.4.0 然后在ubuntu里建个文件夹把它扔进去, ...
- 16.04编译android 7.0,ubuntu16.04 编译Android5.1报错
hi kylin team, 我使用 ubuntu16.04 构建 android 编译环境后编译 android5.1 时出现如下报错.请向开发团队反馈看能否给出解决方案,谢谢! 当我使用 ubun ...
- ubuntu16.04编译android6_r1源码绕坑贴
1 前言 经过3天奋战,终于在Ubuntu 16.04上把Android 6.0的源码编译出来了,各种配置,各种error,各种爬坑,特写此博客记录爬坑经历.先上图,Ubuntu上编译完后成功运行模拟 ...
- Ubuntu16.04编译Android 6.0系统源码过程简要记录总结
一,安装VMware Workstation,百度网盘下载(内含注册机) 链接: https://pan.baidu.com/s/1wz4hdNQBikTvyUMNokSVYg 提取码: yed7 V ...
- Ubuntu16.04编译Android10源码并刷机Pixel
一.环境描述 电脑配置: 系统:Windows10 内存:16GB 硬盘:500GB 软件环境: VirtualBox虚拟机 虚拟配置: 系统:Ubuntu16.04.7 内存:9GB 硬盘:300G ...
最新文章
- 漫画:你真的懂Github吗?
- android地址格式转换,Android(安卓)时间戳和日期之间的转化
- python抓取微博数据中心_有哪些「神奇」的数据获取方式?
- ITK:图像的置换轴
- 数据结构算法 二进制转十进制_数据结构 - 栈
- Python 列表(List)
- for循环语句例题及解析python_Python入门第8课,for语句综合练习,突破循环累加难点...
- 最小路径和--p64--动态规划
- FCKEditor 打开页面总是得到焦点问题处理 FCKConfig.StartupFocus=false;
- 将 Typora 小工具添加到右键菜单中
- 一个比较完整的短信接口帮助类参考
- C# 寻找数组中的最大子数组
- java基础面试题84道
- 计算机打印共享打印机,教您电脑打印机共享怎么设置
- 计算机论文要求多少字,论文需要写多少字
- Correlation Congruence for Knowledge Distillation
- Oracle定时任务dbms_job使用详解
- centos7 glibc2.17升级到glibc2.28
- SpringCloud(14) Sentinel 1.8.4 规则持久化到Nacos
- 社会工程学之黑客七宗罪——傲慢(Hooking)
热门文章
- html5加载vr视频格式,VR视频格式是什么_VR视频有什么格式_怎么分辨VR视频格式-VR之家...
- 光照与渲染(十)- 自发光材质
- win7计算机双击变管理,如何修复Win7系统鼠标单击以双击
- 聊天链接改单系统源码
- 1024 祝我们快乐
- python两个表格相同数据筛选_python筛选出两个文件中重复行的方法
- Linux驱动之DMA
- iso文件用什么打开?还有iso是什么东西?
- 【渲染】解决三维出图黑白边缘溢出问题:直通(STRAIGHT)与预乘(PREMULT)ALPHA剖析
- 无心剑汉英双语诗005.《抒怀》