Compile Ubuntu Image from Source Code

Preparations

A x86 computer which runs Ubuntu 22.04

Steps

1. install the below packages:

sudo apt-get install -y build-essential gcc-aarch64-linux-gnu bison \
qemu-user-static qemu-system-arm qemu-efi u-boot-tools binfmt-support \
debootstrap flex libssl-dev bc rsync kmod cpio xz-utils fakeroot parted \
udev dosfstools uuid-runtime git-lfs device-tree-compiler python2 python3 \
python-is-python3 fdisk bc debhelper python3-pyelftools python3-setuptools \
python3-distutils python3-pkg-resources swig libfdt-dev libpython3-dev

2. To checkout the source and build:

git clone https://github.com/mixtile-rockchip/ubuntu-rockchip.git
cd ubuntu-rockchip

3. All Build

sudo ./build.sh -b mixtile-blade3 -s noble -f desktop

4. If you only want to compile kernel and uboot, you can use the following command

Only build kernel

sudo ./build.sh -b mixtile-blade3 -s noble -f desktop -ko

5. Only build uboot

sudo ./build.sh -b mixtile-blade3 -s noble -f desktop -uo

6. Other build options

Usage: ./build.sh --board=[mixtile-blade3] --suite=[jammy|noble] --flavor=[server|desktop]

Required arguments:
-b, --board=BOARD target board
-s, --suite=SUITE ubuntu suite
-f, --flavor=FLAVOR ubuntu flavor

Optional arguments:
-h, --help show this help message and exit
-c, --clean clean the build directory
-ko, --kernel-only only compile the kernel
-uo, --uboot-only only compile uboot
-ro, --rootfs-only only build rootfs
-l, --launchpad use kernel and uboot from launchpad repo
-v, --verbose increase the verbosity of the bash script
Was this article helpful?

Related Articles

Need Support?

Can't find the answer you're looking for?
Contact Support