Skip to main content

Linux Build and Flash

This page summarizes the Linux source installation, build, and flashing workflow for X3588S mini ITX.

Development Environment​

The Linux manual uses VMware with Ubuntu 16.04/18.04 as examples. Ubuntu 16.04 and Ubuntu 18.04 can both satisfy the requirements; Ubuntu 18.04.5 is used in later examples.

For Android source compilation, more than 10GB RAM is recommended. For Linux source compilation, 2GB RAM is usually enough, while some platforms require 4GB or more.

Dependencies​

sudo apt-get update
sudo apt-get install git gnupg flex bison gperf build-essential zip curl \
zlib1g-dev gcc-multilib g++-multilib libc6-dev-i386 libncurses5-dev \
x11proto-core-dev libx11-dev ccache libgl1-mesa-dev libxml2-utils \
xsltproc unzip lzop liblz4-tool genext2fs make device-tree-compiler \
u-boot-tools libssl-dev python-pyelftools python3-pyelftools repo p7zip p7zip-full

Install Source Package​

tar -xvf x3588s_linux.tar.gz
cd x3588s_linux

The real filename depends on the delivered package.

Source Directory​

Typical entries:

app
buildroot
debian
docs
external
kernel
prebuilts
rkbin
rockdev
u-boot
build.sh
device
envsetup.sh
Makefile
mk.sh
README
rkflash.sh
tools
yocto

Build Help​

./build.sh -h

The help includes BoardConfig, lunch, uboot, spl, loader, kernel, modules, toolchain, rootfs, buildroot, ramboot, debian, distro, pcba, recovery, all, cleanall, firmware, updateimg, otapackage, sdpackage, and save.

Build U-Boot​

./edge build -u

Build Kernel​

./edge build -k

Build rootfs​

./edge build -r

Package Firmware​

./build.sh updateimg

Common output files:

FileDescription
boot.imgContains kernel.img and resource.img
MiniLoaderAll.binDownload-tool loader
misc.imgMisc device resource
oem.imgUser adaptation packages or data
parameter.txtPartition file
recovery.imgRecovery image
rootfs.ext4ext4 partition image
rootfs.imgRoot filesystem image
update.imgFull upgrade package

Windows Flashing​

  1. Extract RKTools.rar.
  2. Run DriverInstall.exe under SDK/RKTools/windows/Release_DriverAssitant.
  3. Use AndroidTool_Release_v2.79 or later. The Linux source package may include AndroidTool_Release_v2.81.
  4. Select update.img, put the board into Loader or Maskrom mode, and run the upgrade.