[AIOT] How to Build Tinker Board 3 Debian Image
Kernel 5.10
- Install Docker environment
- Uninstall old versions
sudo apt-get remove docker docker-engine docker.io containerd runc
- Install Docker Engine – Community
sudo apt-get update
sudo apt-get install apt-transport-http ca-certificates curl gnupg-agent software-properties-common
curl -fsSL http://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
sudo apt-key fingerprint 0EBFCD88
sudo add-apt-repository "deb [arch=amd64] http://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"
sudo apt-get update
sudo apt-get install docker-ce docker-ce-cli containerd.io
sudo docker run hello-world
Reference: http://docs.docker.com/engine/install/ubuntu/
- Manage Docker as a non-root user
sudo groupadd docker
sudo usermod -aG docker $USER
newgrp docker
docker run hello-world
Reference: http://docs.docker.com/engine/install/linux-postinstall/
- Download the source code:
repo init -u http://github.com/TinkerBoard-Linux/rockchip-linux-manifest.git -b linux5.10-rk356x
- Code compiling
- Go to the directory where you have downloaded the code base and execute the script. This will take a while to install the necessary packages on the host and build the Docker image.
./docker_builder/docker-builder-run.sh
Once the above is done, you are in the shell of the newly started Docker container as the following. You can start to issue commands as usual.
Options to run docker: --privileged --rm -it --volume /mnt/2T-disk/linux5.10-rk356x_0620:/source
your_usernmae@292c696527f6:/source$
- You can issue the following command to build all the images for Debian. All the images will be saved in the directory rockdev.
./build.sh rockchip_rk3566_tinker_board_3_debain_defconfig
./build.sh
It will generate a file which named sdcard_full.img and located at [source tree]/rockdev/sdcard_full.img
- You can issue the following command to build all the images for Yocto. All the images will be saved in the directory rockdev.
./build.sh rockchip_rk3566_tinker_board_3_yocto_defconfig
./build.sh
It will generate a file which named sdcard_full.img and located at [source tree]/rockdev/sdcard_full.img
- Compiling u-boot/Kernel/Debian separately
- u-boot
./build.sh uboot
It will generate a file which named uboot.img and located at [source tree]/u-boot/uboot.img
- Kernel
./build.sh kernel
It will generate a file which named boot.img and located at [source tree]/kernel/boot.img
- Debian
./build.sh debian
It will generate a file which named linaro-rootfs.img and located at [source tree]/debian/linaro-rootfs.img
- Yocto
./build.sh yocto
It will generate a file which named linaro-rootfs.img and located at [source tree]/ yocto/build/latest/rootfs.img