From mboxrd@z Thu Jan 1 00:00:00 1970 From: Jesper Dangaard Brouer Subject: Re: [PATCH bpf-next v2 0/5] samples: bpf: fix build after move to full libbpf Date: Tue, 15 May 2018 08:10:09 +0200 Message-ID: <20180515081009.4cd33c8e@redhat.com> References: <20180515053506.4345-1-jakub.kicinski@netronome.com> <20180515055751.yhr7wklhh2lshnzd@ast-mbp> Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Cc: Jakub Kicinski , daniel@iogearbox.net, oss-drivers@netronome.com, netdev@vger.kernel.org, =?UTF-8?B?QmrDtnJuIFQ=?= =?UTF-8?B?w7ZwZWw=?= , Y Song , brouer@redhat.com To: Alexei Starovoitov Return-path: Received: from mx3-rdu2.redhat.com ([66.187.233.73]:37650 "EHLO mx1.redhat.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1752171AbeEOGKQ (ORCPT ); Tue, 15 May 2018 02:10:16 -0400 In-Reply-To: <20180515055751.yhr7wklhh2lshnzd@ast-mbp> Sender: netdev-owner@vger.kernel.org List-ID: On Mon, 14 May 2018 22:57:53 -0700 Alexei Starovoitov wrote: > On Mon, May 14, 2018 at 10:35:01PM -0700, Jakub Kicinski wrote: > > Hi! > > > > Following patches address build issues after recent move to libbpf. > > For out-of-tree builds we would see the following error: > > > > gcc: error: samples/bpf/../../tools/lib/bpf/libbpf.a: No such file or directory > > > > libbpf build system is now always invoked explicitly rather than > > relying on building single objects most of the time. We need to > > resolve the friction between Kbuild and tools/ build system. > > > > Mini-library called libbpf.h in samples is renamed to bpf_insn.h, > > using linux/filter.h seems not completely trivial since some samples > > get upset when order on include search path in changed. We do have > > to rename libbpf.h, however, because otherwise it's hard to reliably > > get to libbpf's header in out-of-tree builds. > > > > v2: > > - fix the build error harder (patch 3); > > - add patch 5 (make clang less noisy). > > Applied, Thanks I just tried it out, but the build fails. $ make samples/bpf/ CHK include/config/kernel.release CHK include/generated/uapi/linux/version.h CHK include/generated/utsrelease.h CHK include/generated/bounds.h CHK include/generated/timeconst.h CHK include/generated/asm-offsets.h CALL scripts/checksyscalls.sh DESCEND objtool CHK scripts/mod/devicetable-offsets.h make -C /home/jbrouer/git/kernel/bpf-next/samples/bpf/../../tools/lib/bpf/ RM='rm -rf' LDFLAGS= srctree=/home/jbrouer/git/kernel/bpf-next/samples/bpf/../../ O= Auto-detecting system features: ... libelf: [ OFF ] ... bpf: [ OFF ] No libelf found make[2]: *** [Makefile:212: elfdep] Error 1 make[1]: *** [samples/bpf/Makefile:207: /home/jbrouer/git/kernel/bpf-next/samples/bpf/../../tools/lib/bpf/libbpf.a] Error 2 make: *** [Makefile:1743: samples/bpf/] Error 2 But it might not be related to this change, as the problem seems to the with the "Auto-detecting system features". It is the build of libbpf that is the problem. $ cd tools/lib/bpf/ $ make Auto-detecting system features: ... libelf: [ OFF ] ... bpf: [ OFF ] No libelf found make: *** [Makefile:212: elfdep] Error 1 And do have 'libelf' installed on this system... the same build/make commands works on net-next. On net-next I see: $ cd tools/lib/bpf/ $ make Auto-detecting system features: ... libelf: [ on ] ... bpf: [ on ] Warning: Kernel ABI header at 'tools/include/uapi/linux/bpf.h' differs from latest version at 'include/uapi/linux/bpf.h' Warning: Kernel ABI header at 'tools/include/uapi/linux/if_link.h' differs from latest version at 'include/uapi/linux/if_link.h' CC libbpf.o CC bpf.o CC nlattr.o CC btf.o LD libbpf-in.o LINK libbpf.a LINK libbpf.so -- Best regards, Jesper Dangaard Brouer MSc.CS, Principal Kernel Engineer at Red Hat LinkedIn: http://www.linkedin.com/in/brouer