当前位置:   article > 正文

ubuntu22.04-bcc源码编译安装_ubuntu20.04 编译 bcc

ubuntu20.04 编译 bcc

ubuntu22.04-bcc源码编译安装

如在新系统中安装,确保安装了make,以及zlib,如果没有安装,请执行

sudo apt update
sudo apt install make
sudo apt install zlib1g-dev
  • 1
  • 2
  • 3

一、bcc编译安装

1、安装依赖

sudo apt install -y bison build-essential cmake flex git libedit-dev liblzma-dev \libllvm12 llvm-12-dev libclang-12-dev python3 zlib1g-dev libelf-dev libfl-dev python3-distutils
  • 1

2、git仓库获取

git clone https://github.com/iovisor/bcc.git
  • 1

在拉取的含有bcc的目录执行

mkdir bcc/build; cd bcc/build
cmake ..
  • 1
  • 2

3、配置缺失的依赖

a、Could NOT find LibDebuginfod

在这里插入图片描述

通过源码编译安装(ubuntu22.04我选择0.189,ubuntu20.04选择0.188)

安装依赖包

sudo apt install -y g++ libmicrohttpd-dev libsqlite3-dev libarchive-dev libcurl4-openssl-dev gettext libzstd-dev pkg-config
  • 1

下载LibDebuginfod依赖,依然通过编译安装

wget https://sourceware.org/elfutils/ftp/0.189/elfutils-0.189.tar.bz2
tar xvf elfutils-0.189.tar.bz2
mkdir elfutils-0.189/build 
cd elfutils-0.189/build/ 
../configure
make
sudo make install
sudo ldconfig
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
b、Could NOT find LuaJIT

在这里插入图片描述

通过源码编译安装,选择稳定的5.1版本

wget https://luajit.org/download/LuaJIT-2.0.5.tar.gz
tar -zxvf LuaJIT-2.0.5.tar.gz
cd LuaJIT-2.0.5
make
sudo make install
  • 1
  • 2
  • 3
  • 4
  • 5
c、缺失arping、netperf、iperf

在这里插入图片描述

sudo apt install arping netperf iperf
  • 1

依赖配置完成,重新执行

cmake ..
make
  • 1
  • 2

报错缺失setuptools
在这里插入图片描述

执行

sudo apt install python3-pip
  • 1

继续

make
  • 1

在这里插入图片描述

依次执行下列命令

sudo make install
cmake -DPYTHON_CMD=python3 .. 
pushd src/python/
make
sudo make install
popd
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6

到此安装完成,进行编译调试。

二、调试运行

默认安装在/usr/share/bcc

cd /usr/share/bcc/examples
ls
sudo python3 hello_world.py
  • 1
  • 2
  • 3

报错缺失BPF,AttributeError: /lib/x86_64-linux-gnu/libbcc.so.0: undefined symbol: bpf_module_create_b
在这里插入图片描述

解决:打开bcc编译生成的bcc lib库,进行替换。

编译生成的库位置看自己的git拉取位置,本人在

cd /home/whj/Desktop/bcc/build/src/python/bcc-python3/bcc
  • 1

在这里插入图片描述

python3的bcc库默认在

cd /usr/lib/python3/dist-packages/bcc
  • 1

在这里插入图片描述

确定好位置,执行

sudo cp -r /home/whj/Desktop/bcc/build/src/python/bcc-python3/bcc/* /usr/lib/python3/dist-packages/bcc/
  • 1

重新执行

cd /usr/share/bcc/examples
ls
sudo python3 hello_world.py
  • 1
  • 2
  • 3

在这里插入图片描述

本文内容由网友自发贡献,转载请注明出处:https://www.wpsshop.cn/w/盐析白兔/article/detail/351876
推荐阅读
相关标签
  

闽ICP备14008679号