ebpf环境搭建

1. libbpf

1
2
3
4
git clone https://github.com/libbpf/libbpf.git
cd libbpf/src
make
sudo make install

注意: 可能会提示缺少libelf, 安装libelf

1
sudo apt-get install libelf-dev

示意图

2. bpftrace

简介:bpftrace是一个基于eBPF的高层次追踪语言和运行时环境,适用于Linux。它支持对内核和用户空间的静态和动态追踪

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
sudo apt-get install -y \
    asciidoctor \
    binutils-dev \
    bison \
    build-essential \
    clang \
    cmake \
    flex \
    libbpf-dev \
    libbpfcc-dev \
    libcereal-dev \
    libdw-dev \
    libelf-dev \
    libiberty-dev \
    libpcap-dev \
    llvm-dev \
    libclang-dev \
    linux-tools-common \
    pahole \
    systemtap-sdt-dev \
    xxd \
    zlib1g-dev
git clone https://github.com/bpftrace/bpftrace.git
cd bpftrace
mkdir build
cd build/
cmake .. -DBUILD_TESTING=OFF -DCMAKE_BUILD_TYPE=Release  # 可能会报libbpf版本错误,需要重新安装libbpf(参考1)
make -j8
sudo make install

3. bcc

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
sudo apt install -y zip bison build-essential cmake flex git libedit-dev \
  libllvm18 llvm-18-dev libclang-18-dev python3 zlib1g-dev libelf-dev libfl-dev python3-setuptools \
  liblzma-dev libdebuginfod-dev arping netperf iperf libpolly-18-dev
git clone https://github.com/iovisor/bcc.git
mkdir bcc/build; cd bcc/build
cmake ..
make
sudo make install
cmake -DPYTHON_CMD=python3 .. # build python3 binding
pushd src/python/
make
sudo make install
popd
最后更新于 May 10, 2025 00:00 UTC
使用 Hugo 构建
主题 StackJimmy 设计