How to make minimal Linux build for rk3568

Type: Self-Compiled Firmware
SDK Package Name: rk356x_linux_release_v1.3.0b_20221213
Modification Content: LVDS configuration
Log: no log (2).zip

I have a custom board based on RK3568jq.I have downloded pre-made Linux minimal image AIO-3568J_Ubuntu20.04-Minimal-r240_v1.3.2b_230331.img
from this link:
https://drive.google.com/drive/folders/10PdMdmHaRxDPeEWIRqHLou4zUxcXRCQi
Then i wrote this firmware to RK3568jq SOM and everything works fine, Linux is loaded successfully.
I have only official document for Linux Desktop build:

But there is no steps described for minimal Linux OS build. And desktop Linux does not load on my custom board.
I have a question:

How can i make minimal Linux OS build for rk3568jq from the source code (SDK) (not downloaded pre-made Linux minimal image)?

Thank you.
tchip_askquestions
no log (2).zip (22 Bytes)

You can download minimal rootfs and pack firmware by yourself.
https://en.t-firefly.com/doc/download/150.html#other_379

fixed
i used Yocto build from this link and everything is ok:
https://wiki.t-firefly.com/en/Firefly-Linux-Guide/manual_yocto.html

It sounds like you’ve made some solid progress with the pre-built image, but I totally get why you’d want a minimal Linux build directly from the source for your RK3568JQ-based board. The official desktop Linux build guide is a good starting point, and you can adapt parts of that for the minimal setup. Here’s how to go about it:

  1. Set Up the Build Environment: You’ll need to set up your host environment if you haven’t already (install dependencies like gcc, g++, make, etc.). Then, download the Firefly SDK source code for RK3568JQ.

  2. Configure for Minimal Image: Start by using a minimal root filesystem, which is lighter on unnecessary services. You might look into busybox as it provides a stripped-down set of common commands for small footprint systems.

  3. Modify the Build Script: If the SDK offers configuration files, search for a minimal configuration option (like core-image-minimal if you’re using Yocto, or equivalent). Set that configuration in the .config or in the build script to avoid including the GUI or desktop elements.

  4. Compile the Kernel and Root Filesystem: From the SDK, you should be able to compile the kernel and filesystem for your minimal setup. This usually involves commands like:

make ARCH=arm CROSS_COMPILE=<your-cross-compiler> <defconfig>
make ARCH=arm CROSS_COMPILE=<your-cross-compiler> -j4
  1. Transfer and Test: Once the image is built, flash it to your board as you did with the pre-made image and test boot. If you encounter boot issues, try monitoring the serial console for debugging info—it often points out if a certain module or driver is causing issues.

It might take a few iterations, but this should get you started on a minimal build that’s more tailored to your setup. Let us know how it goes, or if you need help with specific build errors.

Good luck!