On Wed, 2019-05-15 at 13:24 -0700, William Tu wrote: > The libbpf requires linking elf library. Fix it by > adding -lelf. > > Fixes: f1debd77efaf ("net/af_xdp: introduce AF_XDP PMD") > Signed-off-by: William Tu < > u9012...@gmail.com > > > --- > mk/rte.app.mk | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/mk/rte.app.mk b/mk/rte.app.mk > index 7c9b4b538e52..e5d15218618a 100644 > --- a/mk/rte.app.mk > +++ b/mk/rte.app.mk > @@ -145,7 +145,7 @@ _LDLIBS-$(CONFIG_RTE_LIBRTE_DPAA2_MEMPOOL) += > -lrte_mempool_dpaa2 > endif > > _LDLIBS-$(CONFIG_RTE_LIBRTE_PMD_AF_PACKET) += -lrte_pmd_af_packet > -_LDLIBS-$(CONFIG_RTE_LIBRTE_PMD_AF_XDP) += -lrte_pmd_af_xdp > -lbpf > +_LDLIBS-$(CONFIG_RTE_LIBRTE_PMD_AF_XDP) += -lrte_pmd_af_xdp > -lbpf -lelf > _LDLIBS-$(CONFIG_RTE_LIBRTE_ARK_PMD) += -lrte_pmd_ark > _LDLIBS-$(CONFIG_RTE_LIBRTE_ATLANTIC_PMD) += -lrte_pmd_atlantic > _LDLIBS-$(CONFIG_RTE_LIBRTE_AVP_PMD) += -lrte_pmd_avp
Hi, This was already discussed, and libbpf needs to link with libelf itself as it's an internal dependency. It was already fixed in the kernel tree some time ago, so it should be correct with a recent version. If you are using an old version you can either update or fix it in your application. So I don't think we should carry this work-around ourselves in DPDK, as we'll end up overlinking when using fixed libbpf versions. -- Kind regards, Luca Boccassi