编译 Ubuntu 固件 ( GPT )报错 ERROR: Running build_check_power_domain failed!

固件类型:官方提供的固件
固件文件名称:rk3399_linux_release_v2.5.1_20210301
固件下载地址:Firefly | 让科技更简单,让生活更智能
Log日志:log_1.txt

本帖最后由 woshi520laoxie 于 2022-8-4 11:33 编辑

编译环境:
embedfire@embedfire:~/rk3399_linux_release_v2.5.1_20210301$ uname -a
Linux embedfire 5.4.0-122-generic #138~18.04.1-Ubuntu SMP Fri Jun 24 14:14:03 UTC 2022 x86_64 x86_64 x86_64 GNU/Linux
注意:我刚才试了一下下载log_1.txt是会自动扣分的,这个信息其实最有用的也就是错误信息了。也可以不下载。因为我还不熟悉这个论坛。

问题描述:
根据教程编译:
1. 编译 Ubuntu 固件 ( GPT ) — Firefly Wiki (t-firefly.com)
编译指令:./build.sh kernel
根据修改:

1、修改配置文件
/home/embedfire/rk3399_linux_release_v2.5.1_20210301/device/rockchip/rk3399/firefly-rk3399-ubuntu.mk
也就是:device/rockchip/.BoardConfig.mk 链接到/home/embedfire/rk3399_linux_release_v2.5.1_20210301/device/rockchip/rk3399/firefly-rk3399-ubuntu.mk

2、修改镜像的路径
export RK_ROOTFS_IMG=ubunturootfs/Ubuntu18.04-Lxde_RK3399PRO_v2.11-56_20220527.img
我的实际路径是:
/home/embedfire/rk3399_linux_release_v2.5.1_20210301/ubunturootfs

3、编译指令的路径
/home/embedfire/rk3399_linux_release_v2.5.1_20210301
那么文件系统的相对路径是对的

报错:
ERROR: Running build_check_power_domain failed!ERROR: exit code 127 from line 425: dtc -I dtb -O dts -o ${dump_kernel_dtb_file} ${kernel_file_dtb_dts}.dtb 2> /dev/null
image.png

请教大家,这个异常的原因是什么呢?

tchip_askquestions
log_1.txt (172 KB)

我看到你提交的log了,是你缺少相应的环境包了。

  LZ4C    arch/arm64/boot/Image.lz4
/bin/sh: 1: lz4c: not found
arch/arm64/boot/Makefile:42: recipe for target 'arch/arm64/boot/Image.lz4' failed
make[1]: *** [arch/arm64/boot/Image.lz4] Error 1
arch/arm64/Makefile:116: recipe for target 'Image.lz4' failed

需要安装:
sudo apt-get install liblz4-tool

总共需要的环境包是这些,https://wiki.t-firefly.com/zh_CN … k-bian-yi-huan-jing

sudo apt-get update

sudo apt-get install repo git-core gitk git-gui gcc-arm-linux-gnueabihf u-boot-tools device-tree-compiler \
gcc-aarch64-linux-gnu mtools parted libudev-dev libusb-1.0-0-dev python-linaro-image-tools \
linaro-image-tools gcc-arm-linux-gnueabihf libssl-dev liblz4-tool genext2fs lib32stdc++6 \
gcc-aarch64-linux-gnu g+conf autotools-dev libsigsegv2 m4 intltool libdrm-dev curl sed make \
binutils build-essential gcc g++ bash patch gzip bzip2 perl tar cpio python unzip rsync file bc wget \
libncurses5 libqt4-dev libglib2.0-dev libgtk2.0-dev libglade2-dev cvs git mercurial rsync openssh-client \
subversion asciidoc w3m dblatex graphviz python-matplotlib libssl-dev texinfo fakeroot \
libparse-yapp-perl default-jre patchutils swig chrpath diffstat gawk time expect-dev

还需提醒的是,不能使用sudo命令编译喔,不然因为有些生成文件被赋予仅超级权限可读写操作,会造成编译过程因权限问题再报错的。