构建 libbpf¶
libelf 和 zlib 是 libbpf 的内部依赖项,因此需要链接并安装在系统上才能使应用程序正常工作。默认情况下使用 pkg-config 来查找 libelf,可以使用 PKG_CONFIG 覆盖调用的程序。
如果不想在构建时使用 pkg-config,可以在调用 make 时设置 NO_PKG_CONFIG=1 来禁用它。
要构建静态 libbpf.a 和共享 libbpf.so
$ cd src
$ make
要在目录 build/ 中仅构建静态 libbpf.a 库,并将它们与 libbpf 头文件一起安装在暂存目录 root/ 中
$ cd src
$ mkdir build root
$ BUILD_STATIC_ONLY=y OBJDIR=build DESTDIR=root make install
要针对安装在 /build/root/ 中的自定义 libelf 依赖项构建静态 libbpf.a 和共享 libbpf.so,并将它们与 libbpf 头文件一起安装在构建目录 /build/root/ 中
$ cd src
$ PKG_CONFIG_PATH=/build/root/lib64/pkgconfig DESTDIR=/build/root make