以前,我遇到了与 file: 相关的相同错误arch/arm64/boot/dts/qcom/apq8016-sbc.dtb
,但我通过subdir-y += qcom
从arch/arm64/boot/dts/Makefile
.现在出现了一个新的相同错误,我不知道如何修复它。互联网建议没有帮助。
错误:
make[3]: *** No rule to make target 'arch/arm64/boot/dts/kona-rumi.dtb', needed by '__build'. Stop.
make[3]: *** Waiting for unfinished jobs....
make[2]: *** [../scripts/Makefile.build:642: arch/arm64/boot/dts] Error 2
make[1]: *** [arch/arm64/Makefile:172: dtbs] Error 2
make[1]: *** Waiting for unfinished jobs....
错误make V=1
:
make -f ../scripts/Makefile.build obj=arch/arm64/boot/dts/ti need-builtin=
(cat /dev/null; ) > arch/arm64/boot/dts/ti/modules.order
make -f ../scripts/Makefile.build obj=arch/arm64/boot/dts/vendor need-builtin=
make -f ../scripts/Makefile.build obj=arch/arm64/boot/dts/vendor/qcom need-builtin=
(cat /dev/null; ) > arch/arm64/boot/dts/vendor/qcom/modules.order
make[4]: *** No rule to make target 'arch/arm64/boot/dts/vendor/qcom/kona-rumi.dtb', needed by '__build'. Stop.
make[4]: *** Waiting for unfinished jobs....
make[3]: *** [../scripts/Makefile.build:642: arch/arm64/boot/dts/vendor/qcom] Error 2
make[2]: *** [../scripts/Makefile.build:642: arch/arm64/boot/dts/vendor] Error 2
make[1]: *** [arch/arm64/Makefile:172: dtbs] Error 2
make[1]: *** Waiting for unfinished jobs....
我的内核:
我的构建代码:
export ARCH=arm64
export SUBARCH=arm64
export HEADER_ARCH=arm64
export DTC_EXT=dtc
PATH="/home/hehe/Downloads/clang/bin:/home/hehe/Downloads/aarch64-linux-android-4.9/bin:/home/hehe/Downloads/arm-linux-androideabi-4.9/bin:${PATH}"
rm -rf out
make O=out clean && make mrproper
make O=out ARCH=arm64 kona_defconfig
make -j$(nproc --all) O=out ARCH=arm64 CC=clang CLANG_TRIPLE=aarch64-linux-gnu- CROSS_COMPILE=aarch64-linux-android- CROSS_COMPILE_ARM32=arm-linux-androideabi-
答案1
你需要kona/sm8250设备兄弟的设备树,在oneplus oss中查看,像其他供应商一样,他们不将其包含在内核中,而是在其他存储库中(例如设备树),之后该供应商设备树移动到kernelsource/arch/arm64/boot/dts(供应商)在这里