rk3588 Android15 编译报错 BTF .tmp_vmlinux.btf pahole (pahole) is not available Failed to generate BTF for vmlinux

  • 作者:吴思含(Witheart)
  • 更新时间:20260205

问题描述

首次编译RK3588 Android15镜像时,报错

BTF: .tmp_vmlinux.btf: pahole (pahole) is not available
Failed to generate BTF for vmlinux
Try to disable CONFIG_DEBUG_INFO_BTF
make[2]: *** [scripts/Makefile.vmlinux:34: vmlinux] Error 1
make[1]: *** [Makefile:1314: vmlinux] Error 2
make[1]: *** Waiting for unfinished jobs....

解决方式

sudo apt update
sudo apt install dwarves  # pahole 包含在 dwarves 包中

问题解析

编译 Linux 内核时需要生成 BTF(BPF Type Format)信息,但系统缺少 pahole工具,这是一个从 DWARF 调试信息生成 BTF 的工具。BTF 是一种调试信息格式,主要用于增强 eBPF 程序的调试和性能分析功能。

解析

生成

嵌入

包含 BTF

类型信息

CO-RE / 验证

C Source Code
内核源码

GCC / Clang 编译

vmlinux ELF

DWARF
调试信息

pahole

BTF
BPF Type Format

Linux Kernel

eBPF / BPF 程序

Logo

AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。

更多推荐