[dpdk-dev] Pcap question

Olivier MATZ olivier.matz at 6wind.com
Mon Mar 3 22:31:38 CET 2014


Hi Meir,

On 03/03/2014 10:09 PM, Meir Tseitlin wrote:
> -Wl,-lrte_pmd_pcap -Wl,-L/usr/local/lib -Wl,-Wl,-rpath,/usr/local/lib
> -Wl,-lpcap

The problem is related to the lines above. They are generated in
rte.app.mk:

   ifeq ($(CONFIG_RTE_LIBRTE_PMD_PCAP),y)
   LDLIBS += -lrte_pmd_pcap
   LIBPCAP_LDFLAGS ?= $(shell pcap-config --libs)
   $(if $(LIBPCAP_LDFLAGS),,$(error LIBPCAP_LDFLAGS is undefined))
   LDLIBS += $(LIBPCAP_LDFLAGS)
   endif

The output of "pcap-config --libs" on your computer is probably:
   -L/usr/local/lib -Wl,-rpath,/usr/local/lib -lpcap

The problem is that the DPDK makefile add the "-Wl," to convert the
linker arguments into gcc arguments. You may want to replace the
code above by:

   ifeq ($(CONFIG_RTE_LIBRTE_PMD_PCAP),y)
   LDLIBS += -lrte_pmd_pcap
   repl := -Wl,%
   LIBPCAP_LDFLAGS ?= $(patsubst -Wl$(comma),%,$(shell pcap-config --libs))
   $(if $(LIBPCAP_LDFLAGS),,$(error LIBPCAP_LDFLAGS is undefined))
   LDLIBS += $(LIBPCAP_LDFLAGS)
   endif

I don't know if it's the proper way to fix this. Maybe rte.app.mk
should take care of not adding "-Wl," if it's already there.

Regards,
Olivier



More information about the dev mailing list