libbpf_build.rst (1124B)
1.. SPDX-License-Identifier: (LGPL-2.1 OR BSD-2-Clause) 2 3Building libbpf 4=============== 5 6libelf and zlib are internal dependencies of libbpf and thus are required to link 7against and must be installed on the system for applications to work. 8pkg-config is used by default to find libelf, and the program called 9can be overridden with PKG_CONFIG. 10 11If using pkg-config at build time is not desired, it can be disabled by 12setting NO_PKG_CONFIG=1 when calling make. 13 14To build both static libbpf.a and shared libbpf.so: 15 16.. code-block:: bash 17 18 $ cd src 19 $ make 20 21To build only static libbpf.a library in directory build/ and install them 22together with libbpf headers in a staging directory root/: 23 24.. code-block:: bash 25 26 $ cd src 27 $ mkdir build root 28 $ BUILD_STATIC_ONLY=y OBJDIR=build DESTDIR=root make install 29 30To build both static libbpf.a and shared libbpf.so against a custom libelf 31dependency installed in /build/root/ and install them together with libbpf 32headers in a build directory /build/root/: 33 34.. code-block:: bash 35 36 $ cd src 37 $ PKG_CONFIG_PATH=/build/root/lib64/pkgconfig DESTDIR=/build/root make