I installed libbpf-dev (without which the build failed because of not finding bpf/bpf_helpers.h)
./configure BPFC=bpf-gcc BPFLD=bpf-ld
make BPFC=bpf-gcc BPFLD=bpf-ld
It successfully compiles quite a bit of c, but eventually runs into this eBPF limitation about indirect calls:
CC: libproc/elfish_32.c
CC: libproc/Psymtab.c
CC: libproc/rtld_db.c
CC: libproc/rtld_offsets.c
CC: libproc/wrap.c
CC: libproc/isadep_dispatch.c
CC: libproc/i386/isadep.c
BUILD-AR: libproc.a
CC: test/triggers/libproc-dlmlib.c
BUILD-AR: libproc-dlmlib.a
CC: test/triggers/libproc-lookup-victim-lib.c
BUILD-AR: libproc-lookup-victim-lib.a
AR: libcommon.a
AR: libport.a
AR: libproc.a
SHLINK: libdtrace.so
SHLINK: libproc-dlmlib.so
SHLINK: libproc-lookup-victim-lib.so
bpf/get_bvar.c: In function ‘dt_get_bvar’:
bpf/get_bvar.c:212:1: error: indirect call in function, which are not supported by eBPF
212 | }
| ^
bpf/get_bvar.c:212:1: error: indirect call in function, which are not supported by eBPF
BPF-CC: bpf/agg_lqbin.c
BPF-CC: bpf/agg_qbin.c
BPF-CC: bpf/basename.S
BPF-CC: bpf/cleanpath.S
BPF-CC: bpf/dirname.S
BPF-CC: bpf/get_agg.c
bpf/get_agg.c: In function ‘dt_no_agg’:
bpf/get_agg.c:33:1: error: indirect call in function, which are not supported by eBPF
33 | }
| ^
make: *** [Makerules:23: /home/blake/try/dtrace-utils/build/bpf--get_agg.o] Error 1
I tried this with the latest commit in devel and also with the tag 2.0.1.1 with the same result.
Any guidance would be appreciated.
I installed
libbpf-dev(without which the build failed because of not findingbpf/bpf_helpers.h)It successfully compiles quite a bit of c, but eventually runs into this eBPF limitation about indirect calls:
I tried this with the latest commit in
develand also with the tag2.0.1.1with the same result.Any guidance would be appreciated.