diff mbox series

[bpf,1/1] runqslower: fix Makefile

Message ID 065fa340d5f65648e908bc94b6bd63e57e976f35.1580348836.git.hex@fb.com
State Changes Requested
Delegated to: BPF Maintainers
Headers show
Series runqslower: fix Makefile | expand

Commit Message

Yulia Kartseva Jan. 30, 2020, 2:09 a.m. UTC
From: Julia Kartseva <hex@fb.com>

Fix undefined reference linker errors when building runqslower with
gcc 7.4.0 on Ubuntu 18.04.
The issue is with misplaced -lelf, -lz options in Makefile:
$(Q)$(CC) $(CFLAGS) -lelf -lz $^ -o $@

-lelf, -lz options should follow the list of target dependencies:
$(Q)$(CC) $(CFLAGS) $^ -lelf -lz -o $@
or after substitution
cc -g -Wall runqslower.o libbpf.a -lelf -lz -o runqslower

The current order of gcc params causes failure in libelf symbols resolution,
e.g. undefined reference to `elf_memory'
---
 tools/bpf/runqslower/Makefile | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Comments

Andrii Nakryiko Jan. 30, 2020, 2:37 a.m. UTC | #1
On Wed, Jan 29, 2020 at 6:10 PM Yulia Kartseva <hex@fb.com> wrote:
>
> From: Julia Kartseva <hex@fb.com>
>
> Fix undefined reference linker errors when building runqslower with
> gcc 7.4.0 on Ubuntu 18.04.
> The issue is with misplaced -lelf, -lz options in Makefile:
> $(Q)$(CC) $(CFLAGS) -lelf -lz $^ -o $@
>
> -lelf, -lz options should follow the list of target dependencies:
> $(Q)$(CC) $(CFLAGS) $^ -lelf -lz -o $@
> or after substitution
> cc -g -Wall runqslower.o libbpf.a -lelf -lz -o runqslower
>
> The current order of gcc params causes failure in libelf symbols resolution,
> e.g. undefined reference to `elf_memory'
> ---

Thanks for fixing!

Just for the future, there is no need to create a cover letter for a
single patch.

Please also add Fixes tag like so:

Fixes: 9c01546d26d2 ("tools/bpf: Add runqslower tool to tools/bpf")

>  tools/bpf/runqslower/Makefile | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/tools/bpf/runqslower/Makefile b/tools/bpf/runqslower/Makefile
> index 0c021352b..87eae5be9 100644
> --- a/tools/bpf/runqslower/Makefile
> +++ b/tools/bpf/runqslower/Makefile
> @@ -41,7 +41,7 @@ clean:
>
>  $(OUTPUT)/runqslower: $(OUTPUT)/runqslower.o $(BPFOBJ)
>         $(call msg,BINARY,$@)
> -       $(Q)$(CC) $(CFLAGS) -lelf -lz $^ -o $@
> +       $(Q)$(CC) $(CFLAGS) $^ -lelf -lz -o $@
>
>  $(OUTPUT)/runqslower.o: runqslower.h $(OUTPUT)/runqslower.skel.h             \
>                         $(OUTPUT)/runqslower.bpf.o
> --
> 2.17.1
>
Andrii Nakryiko Jan. 30, 2020, 2:38 a.m. UTC | #2
On Wed, Jan 29, 2020 at 6:37 PM Andrii Nakryiko
<andrii.nakryiko@gmail.com> wrote:
>
> On Wed, Jan 29, 2020 at 6:10 PM Yulia Kartseva <hex@fb.com> wrote:
> >
> > From: Julia Kartseva <hex@fb.com>
> >
> > Fix undefined reference linker errors when building runqslower with
> > gcc 7.4.0 on Ubuntu 18.04.
> > The issue is with misplaced -lelf, -lz options in Makefile:
> > $(Q)$(CC) $(CFLAGS) -lelf -lz $^ -o $@
> >
> > -lelf, -lz options should follow the list of target dependencies:
> > $(Q)$(CC) $(CFLAGS) $^ -lelf -lz -o $@
> > or after substitution
> > cc -g -Wall runqslower.o libbpf.a -lelf -lz -o runqslower
> >
> > The current order of gcc params causes failure in libelf symbols resolution,
> > e.g. undefined reference to `elf_memory'
> > ---
>
> Thanks for fixing!
>
> Just for the future, there is no need to create a cover letter for a
> single patch.
>
> Please also add Fixes tag like so:
>
> Fixes: 9c01546d26d2 ("tools/bpf: Add runqslower tool to tools/bpf")

Oh, and Signed-off-by is missing too, please add and respin v2.

With that, also add:

Acked-by: Andrii Nakryiko <andriin@fb.com>

>
> >  tools/bpf/runqslower/Makefile | 2 +-
> >  1 file changed, 1 insertion(+), 1 deletion(-)
> >
> > diff --git a/tools/bpf/runqslower/Makefile b/tools/bpf/runqslower/Makefile
> > index 0c021352b..87eae5be9 100644
> > --- a/tools/bpf/runqslower/Makefile
> > +++ b/tools/bpf/runqslower/Makefile
> > @@ -41,7 +41,7 @@ clean:
> >
> >  $(OUTPUT)/runqslower: $(OUTPUT)/runqslower.o $(BPFOBJ)
> >         $(call msg,BINARY,$@)
> > -       $(Q)$(CC) $(CFLAGS) -lelf -lz $^ -o $@
> > +       $(Q)$(CC) $(CFLAGS) $^ -lelf -lz -o $@
> >
> >  $(OUTPUT)/runqslower.o: runqslower.h $(OUTPUT)/runqslower.skel.h             \
> >                         $(OUTPUT)/runqslower.bpf.o
> > --
> > 2.17.1
> >
diff mbox series

Patch

diff --git a/tools/bpf/runqslower/Makefile b/tools/bpf/runqslower/Makefile
index 0c021352b..87eae5be9 100644
--- a/tools/bpf/runqslower/Makefile
+++ b/tools/bpf/runqslower/Makefile
@@ -41,7 +41,7 @@  clean:
 
 $(OUTPUT)/runqslower: $(OUTPUT)/runqslower.o $(BPFOBJ)
 	$(call msg,BINARY,$@)
-	$(Q)$(CC) $(CFLAGS) -lelf -lz $^ -o $@
+	$(Q)$(CC) $(CFLAGS) $^ -lelf -lz -o $@
 
 $(OUTPUT)/runqslower.o: runqslower.h $(OUTPUT)/runqslower.skel.h	      \
 			$(OUTPUT)/runqslower.bpf.o