You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

编译Linux内核BPF示例程序提示找不到bpf/bpf.h头文件如何解决

问题原因
  • <bpf/bpf.h>不属于Linux内核源码自带的头文件,是用户态libbpf库提供的开发头文件,内核samples/bpf目录下的示例程序默认依赖该库的头文件和动态链接库,未安装对应开发包就会触发头文件找不到的报错。
  • apt-file无搜索结果是因为你没有更新apt-file的本地索引,或是系统未安装libbpf对应的开发包。
解决步骤
  1. 先更新软件源和apt-file索引:
sudo apt update && sudo apt-file update
  1. 安装libbpf开发包:
    Debian/Ubuntu 20.04及以上版本直接执行即可:
sudo apt install libbpf-dev

安装完成后再执行apt-file find bpf/bpf.h就能看到对应的文件路径。
如果你的系统版本较低,源内没有提供libbpf-dev包,可以直接从你下载的内核源码中编译安装libbpf:

cd ../../tools/lib/bpf
make && sudo make install
  1. 修正编译命令
    不能直接用gcc编译单文件,需要链接libbpf库,同时指定内核源码的头文件路径,在samples/bpf目录下执行以下命令即可完成编译:
gcc sock_example.c -o sock_example -lbpf -I/usr/include -I../../include

内容的提问来源于stack exchange,提问作者daisy

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.28 10:09:00