【学习笔记】AIO-3399J之开始编译

匿名 (未验证) 提交于 2019-12-02 23:45:01

作者

作者:卢冬冬
邮箱:ezrobot@163.com

ƽ̨

系统:Ubuntu 16.04 64bit
板卡:AIO-3399J (4GB LDDR3 16GB eMMC)

注意

如果Ubuntu为虚拟机,则至少需要预留64GB的硬盘空间

内容

1. 准备工作

2. 开始编译

  • 下载编译依赖的软件包

新建premake.sh文件,拷贝下面内容到文件中。

#!/bin/bash  # 更新系统 sudo apt-get update  # 根据官方文档安装Kernel及U-Boot编译需要依赖的软件包 sudo apt-get install \     git-core \     gnupg \     flex \     bison \     gperf \     build-essential \     zip \     curl \     zlib1g-dev \     gcc-multilib \     g++-multilib \     libc6-dev-i386 \     lib32ncurses5-dev \     x11proto-core-dev \     libx11-dev \     lib32z1-dev \     ccache \     libgl1-mesa-dev \     libxml2-utils \     xsltproc \     unzip \     device-tree-compiler  # 用以解决编译内核时出现的"scripts/extract-cert.c:21:25: fatal error: openssl/bio.h: No such file or directory"错误 sudo apt-get install libssl-dev  # 用以解决编译内核时出现的"/bin/sh: 1: lz4c: not found ..."错误 sudo apt-get install liblz4-tool

然后使用如下命令,增加premake.sh执行权限并运行。

chmod +x premake.sh  ./premake.sh
  • 解压下载的linux-sdk.7z文件
# 安装7z支持 sudo apt-get install p7zip-full  # 解压linux-sdk.7z 7z x linux-sdk.7z linux-sdk
  • 把下载的UBUNTU镜像放到SDK的指定目录
# 解压 tar -xvf ubuntu_16.04_arm64_20190226150448.img.tar.gz      # SDK根目录下 mkdir ubunturootfs mv ubuntu_16.04_arm64_20190226150448.img ubunturootfs/      # 修改aio-3399j-ubuntu.mk文件 vim device/rockchip/rk3399/aio-3399j-ubuntu.mk      # 把RK_ROOTFS_IMG属性改成ubuntu文件系统镜像的路径(也就是ubuntu_16.04_arm64_20190226150448.img) RK_ROOTFS_IMG=ubunturootfs/ubuntu_16.04_arm64_20190226150448.img
  • 开始编译
# 第1步 ./build.sh aio-3399j-ubuntu.mk  # 第2步 ./build.sh uboot  # 第3步 ./build.sh kernel      # 第4步 ./mkfirmware.sh      # 第5步 ./build.sh updateimg

如果成功的话,可以在rockdev文件夹下得到update.img文件,用于后面升级使用。

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!