trusslab / brf

Apache License 2.0
14 stars 0 forks source link

Issues During Compilation of BRF #46

Closed brant-ruan closed 1 month ago

brant-ruan commented 1 month ago

Hi, thanks for this interesting work. When I try to build the BRF (make), it fails as shown below. Can you give me some guidance? Thank you very much.

In file included from executor/common_linux.h:5691,
                 from executor/common.h:505,
                 from executor/executor.cc:196:
executor/common_brf_linux.h: In function ‘int bpf_program_attach(bpf_program*, int, bpf_link**)’:
executor/common_brf_linux.h:153:29: error: aggregate ‘bpf_program_attach(bpf_program*, int, bpf_link**)::bpf_tcx_opts tcx_opts’ has incomplete type and cannot be defined
  153 |         struct bpf_tcx_opts tcx_opts;
      |                             ^~~~~~~~
executor/common_brf_linux.h:154:35: error: aggregate ‘bpf_program_attach(bpf_program*, int, bpf_link**)::bpf_netfilter_opts nf_opts’ has incomplete type and cannot be defined
  154 |         struct bpf_netfilter_opts nf_opts;
      |                                   ^~~~~~~
executor/common_brf_linux.h:178:25: error: ‘bpf_program__attach_tcx’ was not declared in this scope; did you mean ‘bpf_program__attach_xdp’?
  178 |                 *link = bpf_program__attach_tcx(prog, res, &tcx_opts);
      |                         ^~~~~~~~~~~~~~~~~~~~~~~
      |                         bpf_program__attach_xdp
executor/common_brf_linux.h:224:14: error: ‘BPF_PROG_TYPE_NETFILTER’ was not declared in this scope; did you mean ‘BPF_PROG_TYPE_SOCKET_FILTER’?
  224 |         case BPF_PROG_TYPE_NETFILTER:
      |              ^~~~~~~~~~~~~~~~~~~~~~~
      |              BPF_PROG_TYPE_SOCKET_FILTER
executor/common_brf_linux.h:225:25: error: ‘bpf_program__attach_netfilter’ was not declared in this scope; did you mean ‘bpf_program__attach_iter’?
  225 |                 *link = bpf_program__attach_netfilter(prog, &nf_opts);
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      |                         bpf_program__attach_iter
At global scope:
cc1plus: note: unrecognized command-line option ‘-Wno-unused-command-line-argument’ may have been intended to silence earlier diagnostics
make: *** [Makefile:143: executor] Error 1
make: *** Waiting for unfinished jobs....
brant-ruan commented 1 month ago

Fix it with modifying the -L/usr/local/lib64 option to -L/usr/lib64. Never mind. Thanks.