Hi Devendra, Did you try to look at src/plugins/dpdk.am ?
Cheers, Marco On Thu, 2017-05-18 at 15:42 +0530, devendra rawat wrote: > Hi, > > I am trying to run VPP on an arm64 processor. I am using DPDK v16.11. > > My board is having a non-pci ethernet interface I have added a PMD for that > > in DPDK. > > This PMD makes calls to an external library libxal which is platform specific. All DPDK > apps. including testpmd work fine. > > Using this DPDK I built vpp on my board: > > > > # make V=1 build-release vpp_uses_external_dpdk=yes vpp_dpdk_inc_dir=/root/work/vector/dpdk-v16.11/_install/include/dpdk vpp_dpdk_lib_dir=/root/work/vector/dpdk-v16.11/_install/lib > > My VPP startup.conf file: > > unix { > interactive > log /tmp/vpp.log > cli-listen localhost:5002 > } > api-trace { > on > } > dpdk { > coremask 0xff > vdev uio_xal_enet0 #dpdk vdev device > } > > On staring VPP: > > > root@ubuntu:~/work/vector/vpp# ./build-root/build-vpp-native/vpp/bin/vpp -c ../startup.conf > vlib_plugin_early_init:360: plugin path /usr/lib/vpp_plugins > load_one_plugin:188: Loaded plugin: acl_plugin.so (Access Control Lists) > > load_one_plugin:188: Loaded plugin: dpdk_plugin.so (Data Plane Development > > Kit (DPDK)) > load_one_plugin:188: Loaded plugin: flowperpkt_plugin.so (Flow per Packet) > > load_one_plugin:188: Loaded plugin: ila_plugin.so (Identifier-locator addressing for IPv6) > load_one_plugin:188: Loaded plugin: ioam_plugin.so (Inbound OAM) > load_one_plugin:114: Plugin disabled (default): ixge_plugin.so > load_one_plugin:188: Loaded plugin: lb_plugin.so (Load Balancer) > > load_one_plugin:188: Loaded plugin: libsixrd_plugin.so (IPv6 Rapid > > Deployment on IPv4 Infrastructure (RFC5969)) > > load_one_plugin:188: Loaded plugin: memif_plugin.so (Packet Memory Interface (experimetal)) > > load_one_plugin:188: Loaded plugin: snat_plugin.so (Network Address Translation) > EAL: Detected 8 lcore(s) > EAL: Probing VFIO support... > EAL: VFIO support initialized > > EAL: cannot open /proc/self/numa_maps, consider that all memory is in socket_id 0 > > /root/work/vector/vpp/build-root/build-vpp-native/vpp/bin/.libs/lt-vpp: > > symbol lookup error: /usr/lib/vpp_plugins/dpdk_plugin.so: undefined symbol: xal_init > --------- > > > linking to libxal is not done, hence it is unable to find xal_init() > > function def. This is visible from the ldd command output > for dpdk_plugin.so and lt-vpp. setting LD_LIBRARY_PATH is not helping too. > > root@ubuntu:~/work/vector/vpp# ldd /usr/lib/vpp_plugins/dpdk_plugin.so > linux-vdso.so.1 => (0x0000007fb19b1000) > libm.so.6 => /lib/aarch64-linux-gnu/libm.so.6 (0x0000007fb1366000) > libdl.so.2 => /lib/aarch64-linux-gnu/libdl.so.2 (0x0000007fb1353000) > libc.so.6 => /lib/aarch64-linux-gnu/libc.so.6 (0x0000007fb120b000) > /lib/ld-linux-aarch64.so.1 (0x00000055586e0000) > > > root@ubuntu:~/work/vector/vpp# ldd > > /root/work/vector/vpp/build-root/build-vpp- native/vpp/bin/.libs/lt-vpp > linux-vdso.so.1 => (0x0000007f79f4b000) > > libvlibapi.so.0 => /root/work/vector/vpp/build-root/build-vpp- native/vpp/.libs/libvlibapi.so.0 (0x0000007f79f30000) > > libvlibmemory.so.0 => /root/work/vector/vpp/build-root/build-vpp- native/vpp/.libs/libvlibmemory.so.0 (0x0000007f79f11000) > > libvlib.so.0 => /root/work/vector/vpp/build-root/build-vpp- native/vpp/.libs/libvlib.so.0 (0x0000007f79eb6000) > > libvnet.so.0 => /root/work/vector/vpp/build-root/build-vpp- native/vpp/.libs/libvnet.so.0 (0x0000007f79bbc000) > > libsvm.so.0 => /root/work/vector/vpp/build-root/build-vpp- native/vpp/.libs/libsvm.so.0 (0x0000007f79ba2000) > > libsvmdb.so.0 => /root/work/vector/vpp/build-root/build-vpp- native/vpp/.libs/libsvmdb.so.0 (0x0000007f79b8d000) > > libvppinfra.so.0 => /root/work/vector/vpp/build-root/build-vpp- native/vpp/.libs/libvppinfra.so.0 (0x0000007f79b2f000) > > libpthread.so.0 => /lib/aarch64-linux-gnu/libpthread.so.0 (0x0000007f79af2000) > libdl.so.2 => /lib/aarch64-linux-gnu/libdl.so.2 (0x0000007f79adf000) > libc.so.6 => /lib/aarch64-linux-gnu/libc.so.6 (0x0000007f79998000) > /lib/ld-linux-aarch64.so.1 (0x000000556db75000) > > libcrypto.so.1.0.0 => /lib/aarch64-linux-gnu/libcrypto.so.1.0.0 (0x0000007f797f3000) > librt.so.1 => /lib/aarch64-linux-gnu/librt.so.1 (0x0000007f797dc000) > > > How can I link external libs to dpdk_plugin.so ? libxal is placed in /usr/local/lib. > > Thanks, > Devendra > > > _______________________________________________ > vpp-dev mailing list > vpp-dev@lists.fd.io > https://lists.fd.io/mailman/listinfo/vpp-dev
_______________________________________________ vpp-dev mailing list vpp-dev@lists.fd.io https://lists.fd.io/mailman/listinfo/vpp-dev