[dpdk-users] Compiling DPDK 16.07 with shared option is failing..

Nagaprabhanjan Bellaru nagp.lists at gmail.com
Thu Nov 10 06:07:54 CET 2016

 I found that librte_timer was not enabled and so the compilation failed.
When I enabled the same, it went ahead and failed at a different place
while compiling librte_pmd:

gcc -pie -fPIC
-Wl,-g -shared rte_eth_bond_api.o rte_eth_bond_pmd.o rte_eth_bond_args.o
rte_eth_bond_8023ad.o rte_eth_bond_alb.o -z defs -lrte_mbuf -lethdev
-lrte_eal -lrte_kvargs -lrte_cmdline -lrte_mempool -lrte_ring
-Wl,-soname,librte_pmd_bond.so.1.1 -o librte_pmd_bond.so.1.1
/usr/bin/ld: librte_pmd_bond.so.1.1: version node not found for symbol
rte_eth_bond_8023ad_conf_get at DPDK_2.0
/usr/bin/ld: failed to set dynamic section sizes: Bad value
collect2: error: ld returned 1 exit status

I see that the symbol is present in drivers/net/bonding, but I am not sure
how to fix this error. Can someone please help me?


On Wed, Nov 9, 2016 at 6:04 PM, Nagaprabhanjan Bellaru <nagp.lists at gmail.com
> wrote:

> Hi,
> I am compiling DPDK with "CONFIG_RTE_BUILD_SHARED_LIB=y". However, when I
> compile, it is failing at:
> --
> gcc -pie -fPIC -L/home/ubuntu/development/libfwdd/src/platform/vpp/vpp/
> build-root/install-vpp_debug-native/dpdk/lib  -Wl,-g -shared rte_sched.o
> rte_red.o rte_approx.o rte_reciprocal.o -z defs -lm -lrt -lrte_eal
> -lrte_mempool -lrte_mbuf -lrte_timer -Wl,-soname,librte_sched.so.1.1 -o
> librte_sched.so.1.1
> /usr/bin/ld: cannot find -lrte_timer
> --
> I can see that librte_timer is not compiled yet, however librte_sched
> depends on it - is there any workaround for this issue? Can I change the
> order somewhere?
> Thanks,
> -nagp

More information about the users mailing list