Hi, Currently I use DPDK 20.11.1 LTS along with VPP for RISC-V. Since DPDK 21.11 LTS is now available I am trying to use it. However I am getting a lot of errors as lots of macros have changed. I managed to resolve those errors but there are few errors which I am not able to resolve. File names and paths are changed. File is present in following path but it is not included,
./build-root/build-vpp-native/external/src-dpdk/lib/cryptodev/cryptodev_pmd.h Also name changed from rte_cryptodev_pmd.h to cryptodev_pmd.h ======================================================================= [1/608] Building C object CMakeFiles/plugins/dpdk/CMakeFiles/dpdk_plugin.dir/device/format.c.o FAILED: CMakeFiles/plugins/dpdk/CMakeFiles/dpdk_plugin.dir/device/format.c.o ccache /usr/lib/ccache/gcc-11 -DHAVE_FCNTL64 -D_FORTIFY_SOURCE=2 -Ddpdk_plugin_EXPORTS -I/home/ubuntu/work/vpp/src -ICMakeFiles -I/home/ubuntu/work/vpp/src/plugins -ICMakeFiles/plugins -I/home/ubuntu/work/vpp/build-root/install-vpp-native/external/include -fPIC -g -fPIC -Werror -Wall -Wno-array-bounds -Wno-stringop-overflow -Wno-error=deprecated-declarations -Wno-deprecated-declarations -Wno-address-of-packed-member -O3 -fstack-protector -fno-common -fvisibility=hidden -ffunction-sections -fdata-sections -MD -MT CMakeFiles/plugins/dpdk/CMakeFiles/dpdk_plugin.dir/device/format.c.o -MF CMakeFiles/plugins/dpdk/CMakeFiles/dpdk_plugin.dir/device/format.c.o.d -o CMakeFiles/plugins/dpdk/CMakeFiles/dpdk_plugin.dir/device/format.c.o -c /home/ubuntu/work/vpp/src/plugins/dpdk/device/format.c /home/ubuntu/work/vpp/src/plugins/dpdk/device/format.c: In function ‘format_dpdk_device’: /home/ubuntu/work/vpp/src/plugins/dpdk/device/format.c:674:34: error: ‘rte_eth_devices’ undeclared (first use in this function); did you mean ‘rte_pci_device’? 674 | ptr2sname (rte_eth_devices[xd->port_id].tx_pkt_burst)); | ^~~~~~~~~~~~~~~ | rte_pci_device /home/ubuntu/work/vpp/src/plugins/dpdk/device/format.c:674:34: note: each undeclared identifier is reported only once for each function it appears in [2/608] Building C object CMakeFiles/plugins/dpdk/CMakeFiles/dpdk_plugin.dir/cryptodev/cryptodev.c.o FAILED: CMakeFiles/plugins/dpdk/CMakeFiles/dpdk_plugin.dir/cryptodev/cryptodev.c.o ccache /usr/lib/ccache/gcc-11 -DHAVE_FCNTL64 -D_FORTIFY_SOURCE=2 -Ddpdk_plugin_EXPORTS -I/home/ubuntu/work/vpp/src -ICMakeFiles -I/home/ubuntu/work/vpp/src/plugins -ICMakeFiles/plugins -I/home/ubuntu/work/vpp/build-root/install-vpp-native/external/include -fPIC -g -fPIC -Werror -Wall -Wno-array-bounds -Wno-stringop-overflow -Wno-error=deprecated-declarations -Wno-deprecated-declarations -Wno-address-of-packed-member -O3 -fstack-protector -fno-common -fvisibility=hidden -ffunction-sections -fdata-sections -MD -MT CMakeFiles/plugins/dpdk/CMakeFiles/dpdk_plugin.dir/cryptodev/cryptodev.c.o -MF CMakeFiles/plugins/dpdk/CMakeFiles/dpdk_plugin.dir/cryptodev/cryptodev.c.o.d -o CMakeFiles/plugins/dpdk/CMakeFiles/dpdk_plugin.dir/cryptodev/cryptodev.c.o -c /home/ubuntu/work/vpp/src/plugins/dpdk/cryptodev/cryptodev.c /home/ubuntu/work/vpp/src/plugins/dpdk/cryptodev/cryptodev.c:32:10: fatal error: cryptodev_pmd.h: No such file or directory 32 | #include <cryptodev_pmd.h> | ^~~~~~~~~~~~~~~~~ compilation terminated. [3/608] Building C object CMakeFiles/plugins/dpdk/CMakeFiles/dpdk_plugin.dir/cryptodev/cryptodev_op_data_path.c.o FAILED: CMakeFiles/plugins/dpdk/CMakeFiles/dpdk_plugin.dir/cryptodev/cryptodev_op_data_path.c.o ccache /usr/lib/ccache/gcc-11 -DHAVE_FCNTL64 -D_FORTIFY_SOURCE=2 -Ddpdk_plugin_EXPORTS -I/home/ubuntu/work/vpp/src -ICMakeFiles -I/home/ubuntu/work/vpp/src/plugins -ICMakeFiles/plugins -I/home/ubuntu/work/vpp/build-root/install-vpp-native/external/include -fPIC -g -fPIC -Werror -Wall -Wno-array-bounds -Wno-stringop-overflow -Wno-error=deprecated-declarations -Wno-deprecated-declarations -Wno-address-of-packed-member -O3 -fstack-protector -fno-common -fvisibility=hidden -ffunction-sections -fdata-sections -MD -MT CMakeFiles/plugins/dpdk/CMakeFiles/dpdk_plugin.dir/cryptodev/cryptodev_op_data_path.c.o -MF CMakeFiles/plugins/dpdk/CMakeFiles/dpdk_plugin.dir/cryptodev/cryptodev_op_data_path.c.o.d -o CMakeFiles/plugins/dpdk/CMakeFiles/dpdk_plugin.dir/cryptodev/cryptodev_op_data_path.c.o -c /home/ubuntu/work/vpp/src/plugins/dpdk/cryptodev/cryptodev_op_data_path.c /home/ubuntu/work/vpp/src/plugins/dpdk/cryptodev/cryptodev_op_data_path.c:30:10: fatal error: cryptodev_pmd.h: No such file or directory 30 | #include <cryptodev_pmd.h> | ^~~~~~~~~~~~~~~~~ compilation terminated. [4/608] Building C object CMakeFiles/plugins/dpdk/CMakeFiles/dpdk_plugin.dir/device/init.c.o FAILED: CMakeFiles/plugins/dpdk/CMakeFiles/dpdk_plugin.dir/device/init.c.o ccache /usr/lib/ccache/gcc-11 -DHAVE_FCNTL64 -D_FORTIFY_SOURCE=2 -Ddpdk_plugin_EXPORTS -I/home/ubuntu/work/vpp/src -ICMakeFiles -I/home/ubuntu/work/vpp/src/plugins -ICMakeFiles/plugins -I/home/ubuntu/work/vpp/build-root/install-vpp-native/external/include -fPIC -g -fPIC -Werror -Wall -Wno-array-bounds -Wno-stringop-overflow -Wno-error=deprecated-declarations -Wno-deprecated-declarations -Wno-address-of-packed-member -O3 -fstack-protector -fno-common -fvisibility=hidden -ffunction-sections -fdata-sections -MD -MT CMakeFiles/plugins/dpdk/CMakeFiles/dpdk_plugin.dir/device/init.c.o -MF CMakeFiles/plugins/dpdk/CMakeFiles/dpdk_plugin.dir/device/init.c.o.d -o CMakeFiles/plugins/dpdk/CMakeFiles/dpdk_plugin.dir/device/init.c.o -c /home/ubuntu/work/vpp/src/plugins/dpdk/device/init.c /home/ubuntu/work/vpp/src/plugins/dpdk/device/init.c: In function ‘dpdk_lib_init’: /home/ubuntu/work/vpp/src/plugins/dpdk/device/init.c:615:53: error: passing argument 1 of ‘rte_intr_cap_multiple’ from incompatible pointer type [-Werror=incompatible-pointer-types] 615 | if (pci_dev && rte_intr_cap_multiple (&pci_dev->intr_handle)) | ^~~~~~~~~~~~~~~~~~~~~ | | | struct rte_intr_handle ** In file included from /home/ubuntu/work/vpp/src/plugins/dpdk/device/dpdk.h:33, from /home/ubuntu/work/vpp/src/plugins/dpdk/device/init.c:27: /home/ubuntu/work/vpp/build-root/install-vpp-native/external/include/rte_interrupts.h:436:47: note: expected ‘struct rte_intr_handle *’ but argument is of type ‘struct rte_intr_handle **’ 436 | rte_intr_cap_multiple(struct rte_intr_handle *intr_handle); | ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~ /home/ubuntu/work/vpp/src/plugins/dpdk/device/init.c: In function ‘dpdk_lib_init.constprop’: /home/ubuntu/work/vpp/src/plugins/dpdk/device/init.c:615:30: error: call to ‘rte_intr_cap_multiple’ declared with attribute error: Symbol is not public ABI 615 | if (pci_dev && rte_intr_cap_multiple (&pci_dev->intr_handle)) | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ cc1: all warnings being treated as errors ninja: build stopped: subcommand failed. make[1]: *** [Makefile:693: vpp-build] Error 1 make[1]: Leaving directory '/home/ubuntu/work/vpp/build-root' make: *** [Makefile:564: pkg-deb] Error 2 ======================================================================= Is DPDK 21.11 LTS supported in VPP for X86/ARM? -- Regards, Hrishikesh Karanjikar
-=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#20940): https://lists.fd.io/g/vpp-dev/message/20940 Mute This Topic: https://lists.fd.io/mt/89496496/21656 Group Owner: vpp-dev+ow...@lists.fd.io Unsubscribe: https://lists.fd.io/g/vpp-dev/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-