Package Details: bpftune-git r421.bfec666-2

Git Clone URL: https://aur.archlinux.org/bpftune-git.git (read-only, click to copy)
Package Base: bpftune-git
Description: BPF/tracing tools for auto-tuning Linux
Upstream URL: https://github.com/oracle-samples/bpftune
Licenses: GPLv2 WITH Linux-syscall-note
Conflicts: bpftune
Provides: bpftune
Submitter: KriK
Maintainer: KriK
Last Packager: KriK
Votes: 3
Popularity: 1.20
First Submitted: 2023-07-01 08:11 (UTC)
Last Updated: 2023-07-03 10:28 (UTC)

Latest Comments

ContronThePanda commented on 2024-09-23 20:55 (UTC)

Built and installed successfully with the following changes:

diff --git a/PKGBUILD b/PKGBUILD
index 6d68a1c..988872e 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -27,18 +27,16 @@ pkgver() {

 prepare() {
        cd "$srcdir/$_pkgbase"
-       sed -i 's/\/lib64/\/lib/' include/bpftune/libbpftune.h
-       sed -i 's/\/lib64/\/lib/g' src/Makefile
        sed -i 's/\/sbin/\/bin/g' src/Makefile
        sed -i 's/\/sbin/\/bin/g' src/bpftune.service
 }

 build() {
        cd "$srcdir/$_pkgbase"
-       CC=clang make
+       CC=clang make libdir=lib
 }

 package() {
        cd "$srcdir/$_pkgbase"
-       CC=clang make DESTDIR="$pkgdir" install
+       CC=clang make DESTDIR="$pkgdir" libdir=lib install
 }

ContronThePanda commented on 2024-09-23 20:41 (UTC)

The current build issue seems to be caused by the fact that the PKGBUILD file uses a sed command to replace occurrences of /lib64 with /lib, but the current source code uses the string "lib64" without the leading slash. The current README includes an officially supported way to make this change instead (source):

$ make libdir=lib
$ sudo make install libdir=lib

The current PKGBUILD also does something similar to change sbin to bin; it doesn't look like there's an officially supported way to do that at the moment, but that could present a similar issue in the future.

StrontiumK9 commented on 2024-09-17 06:31 (UTC) (edited on 2024-09-17 06:31 (UTC) by StrontiumK9)

Fails to install with:

error: failed to commit transaction (conflicting files)
bpftune-git: /usr/lib64 exists in filesystem (owned by filesystem)

ress commented on 2023-09-25 00:21 (UTC)

This repository has been moved from https://github.com/oracle-samples to https://github.com/oracle.

glitsj16 commented on 2023-07-25 22:53 (UTC) (edited on 2023-07-25 22:53 (UTC) by glitsj16)

The dynamic linker searches in /usr/lib by default. No need for installing libbpftune.conf to /etc/ld.so.conf.d:

[ -d "${pkgdir}/etc" ] && rm -r "$pkgdir"/etc

Secondly, the package() function currently puts two exact copies into /usr/lib. Only the versioned libbpftune .so should go in there. The other one needs to be a symlink to it:

# make libbpftune.so a symlink to libbpftune.so.0.1.3

[ -f "${pkgdir}/usr/lib/libbpftune.so" ] && rm "${pkgdir}/usr/lib/libbpftune.so"

ln -fs /usr/lib/libbpftune.so.0.1.3 "$pkgdir"/usr/lib/libbpftune.so

HTH

glitsj16 commented on 2023-07-08 16:38 (UTC) (edited on 2023-07-08 16:40 (UTC) by glitsj16)

Thanks for offering this package in the AUR. Some remarks:

  • clang already pulls in llvm-libs, that can be removed from makedepends;
  • make -j1 is needed to build succesfully;
  • reported generated warnings about potential memory leaks upstream.

ptr1337 commented on 2023-07-07 17:01 (UTC)

https://github.com/CachyOS/CachyOS-PKGBUILDS/blob/master/bpftune-git/PKGBUILD

This one is (currently) working. :)

pedrogabriel commented on 2023-07-06 21:50 (UTC)

This don't work for me.

cd src; make
cd docs; make man
make[1]: Entering directory '/home/pedro/.cache/paru/clone/bpftune-git/src/bpftune/docs'
make[1]: Entering directory '/home/pedro/.cache/paru/clone/bpftune-git/src/bpftune/src'
( cat bpftune.rst ; printf "%b"  "\nSEE ALSO\n========\n\t**bpf**\ (2), **bpftune**\ (8),\n" ) | rst2man --verbose > bpftune.8
( cat bpftune-sysctl.rst ; printf "%b"  "\nSEE ALSO\n========\n\t**bpf**\ (2), **bpftune**\ (8),\n" ) | rst2man --verbose > bpftune-sysctl.8
( cat bpftune-tcp-cong.rst ; printf "%b"  "\nSEE ALSO\n========\n\t**bpf**\ (2), **bpftune**\ (8),\n" ) | rst2man --verbose > bpftune-tcp-cong.8
clang -g -fno-stack-protector -D__TARGET_ARCH_x86 -O2 -target bpf                       \
        -I../include -I/usr/include -I/usr/include/libnl3 -I../include/uapi -c tcp_buffer_tuner.bpf.c -o tcp_buffer_tuner.bpf.o;
clang -g -fno-stack-protector -D__TARGET_ARCH_x86 -O2 -target bpf                       \
        -I../include -I/usr/include -I/usr/include/libnl3 -I../include/uapi -c route_table_tuner.bpf.c -o route_table_tuner.bpf.o;
( cat bpftune-neigh.rst ; printf "%b"  "\nSEE ALSO\n========\n\t**bpf**\ (2), **bpftune**\ (8),\n" ) | rst2man --verbose > bpftune-neigh.8
( cat bpftune-tcp-buffer.rst ; printf "%b"  "\nSEE ALSO\n========\n\t**bpf**\ (2), **bpftune**\ (8),\n" ) | rst2man --verbose > bpftune-tcp-buffer.8
( cat bpftune-netns.rst ; printf "%b"  "\nSEE ALSO\n========\n\t**bpf**\ (2), **bpftune**\ (8),\n" ) | rst2man --verbose > bpftune-netns.8
( cat bpftune-net-buffer.rst ; printf "%b"  "\nSEE ALSO\n========\n\t**bpf**\ (2), **bpftune**\ (8),\n" ) | rst2man --verbose > bpftune-net-buffer.8
clang -g -fno-stack-protector -D__TARGET_ARCH_x86 -O2 -target bpf                       \
        -I../include -I/usr/include -I/usr/include/libnl3 -I../include/uapi -c neigh_table_tuner.bpf.c -o neigh_table_tuner.bpf.o;
make[1]: Leaving directory '/home/pedro/.cache/paru/clone/bpftune-git/src/bpftune/docs'
clang -g -fno-stack-protector -D__TARGET_ARCH_x86 -O2 -target bpf                       \
        -I../include -I/usr/include -I/usr/include/libnl3 -I../include/uapi -c sysctl_tuner.bpf.c -o sysctl_tuner.bpf.o;
clang -g -fno-stack-protector -D__TARGET_ARCH_x86 -DBPFTUNE_LEGACY -O2 -target bpf \
        -I../include -I/usr/include -I/usr/include/libnl3 -I../include/uapi -c route_table_tuner.bpf.c \
        -o route_table_tuner.bpf.legacy.o
clang -g -fno-stack-protector -D__TARGET_ARCH_x86 -DBPFTUNE_LEGACY -O2 -target bpf \
        -I../include -I/usr/include -I/usr/include/libnl3 -I../include/uapi -c tcp_buffer_tuner.bpf.c \
        -o tcp_buffer_tuner.bpf.legacy.o
clang -g -fno-stack-protector -D__TARGET_ARCH_x86 -DBPFTUNE_LEGACY -O2 -target bpf \
        -I../include -I/usr/include -I/usr/include/libnl3 -I../include/uapi -c neigh_table_tuner.bpf.c \
        -o neigh_table_tuner.bpf.legacy.o
clang -g -fno-stack-protector -D__TARGET_ARCH_x86 -DBPFTUNE_LEGACY -O2 -target bpf \
        -I../include -I/usr/include -I/usr/include/libnl3 -I../include/uapi -c sysctl_tuner.bpf.c \
        -o sysctl_tuner.bpf.legacy.o
clang -g -fno-stack-protector -D__TARGET_ARCH_x86 -O2 -target bpf                       \
        -I../include -I/usr/include -I/usr/include/libnl3 -I../include/uapi -c tcp_cong_tuner.bpf.c -o tcp_cong_tuner.bpf.o;
clang -g -fno-stack-protector -D__TARGET_ARCH_x86 -O2 -target bpf                       \
        -I../include -I/usr/include -I/usr/include/libnl3 -I../include/uapi -c netns_tuner.bpf.c -o netns_tuner.bpf.o;
clang -g -fno-stack-protector -D__TARGET_ARCH_x86 -O2 -target bpf                       \
        -I../include -I/usr/include -I/usr/include/libnl3 -I../include/uapi -c net_buffer_tuner.bpf.c -o net_buffer_tuner.bpf.o;
clang -g -fno-stack-protector -D__TARGET_ARCH_x86 -O2 -target bpf                       \
        -I../include -I/usr/include -I/usr/include/libnl3 -I../include/uapi -c probe.bpf.c -o probe.bpf.o;
make[1]: *** No rule to make target 'probe.skel.legacy.h', needed by 'libbpftune.o'.  Stop.
make[1]: *** Waiting for unfinished jobs....
clang -g -fno-stack-protector -D__TARGET_ARCH_x86 -DBPFTUNE_LEGACY -O2 -target bpf \
        -I../include -I/usr/include -I/usr/include/libnl3 -I../include/uapi -c tcp_cong_tuner.bpf.c \
        -o tcp_cong_tuner.bpf.legacy.o
clang -g -fno-stack-protector -D__TARGET_ARCH_x86 -DBPFTUNE_LEGACY -O2 -target bpf \
        -I../include -I/usr/include -I/usr/include/libnl3 -I../include/uapi -c netns_tuner.bpf.c \
        -o netns_tuner.bpf.legacy.o
clang -g -fno-stack-protector -D__TARGET_ARCH_x86 -DBPFTUNE_LEGACY -O2 -target bpf \
        -I../include -I/usr/include -I/usr/include/libnl3 -I../include/uapi -c probe.bpf.c \
        -o probe.bpf.legacy.o
clang -g -fno-stack-protector -D__TARGET_ARCH_x86 -DBPFTUNE_LEGACY -O2 -target bpf \
        -I../include -I/usr/include -I/usr/include/libnl3 -I../include/uapi -c net_buffer_tuner.bpf.c \
        -o net_buffer_tuner.bpf.legacy.o
make[1]: Leaving directory '/home/pedro/.cache/paru/clone/bpftune-git/src/bpftune/src'
make: *** [Makefile:41: srcdir] Error 2
==> ERROR: A failure occurred in build().
    Aborting...
error: failed to build 'bpftune-git-r421.bfec666-2': 
error: packages failed to build: bpftune-git-r421.bfec666-2
LANG=C paru -S bpftune-git  10,41s user 1,94s system 101% cpu 12,108 total

KriK commented on 2023-07-03 10:30 (UTC)

@ptr1337 please, try again. I got it fixed

ptr1337 commented on 2023-07-02 15:20 (UTC)

Package is not compiling, but when compiling from git with make directly it works. Log:

        -I../include -I/usr/include -I/usr/include/libnl3 -I../include/uapi -c probe.bpf.c -o probe.bpf.o;
make[1]: *** No rule to make target 'probe.skel.legacy.h', needed by 'libbpftune.o'.  Stop.
make[1]: *** Waiting for unfinished jobs....
make[1]: Leaving directory '/tmp/makepkg/bpftune-git/src/bpftune/docs'