2. Compile Source

❶ Unzip Source

1tar xvf IDEA3588s_android12_240313.tar.gz
2cd IDEA3588s_android12

❷ Compile uboot

1cd u-boot
2./make.sh rk3588

❸ Compile kernel

1cd kernel-5.10/
2export PATH=../prebuilts/clang/host/linux-x86/clang-r416183b/bin:$PATH
3alias msk='make CROSS_COMPILE=aarch64-linux-gnu- LLVM=1 LLVM_IAS=1'
4msk ARCH=arm64 rockchip_defconfig android-11.config pcie_wifi.config;
5msk ARCH=arm64 rk3588s-evb4-lp4x-v10.img -j24

Except for first compilation, complie as follow if only update kernel. After compiling, user can directly flash boot.img in the current directory.

Export clang to the environment.

1cd kernel-5.10/
2export PATH=../prebuilts/clang/host/linux-x86/clang-r416183b/bin:$PATH
3alias msk='make CROSS_COMPILE=aarch64-linux-gnu- LLVM=1 LLVM_IAS=1'
1msk ARCH=arm64 rockchip_defconfig android-11.config;
2msk ARCH=arm64 BOOT_IMG=../rockdev/Image-rk3588_s/boot.img rk3588s-evb4-lp4x-v10.img

User can flash boot.img under kernel-5.10/ directly to boot position of machine after compiling, and load the partition table parameter.txt when flashing, for fear of flashing to the wrong place.

❹ Compile Android

1source build/envsetup.sh
2lunch rk3588s_s-userdebug
3make –j24

❺ Generate and Check Firmwares

1./mkimage.sh
2./build.sh -u

Images and update.img are generated in directory rockdev/