> >Hi, >If you could have a look at this ><http://stackoverflow.com/questions/39227298/cant-make-install-ovs> problem >it would be very helpful. > >or here is the detail. > >I am following this ><https://github.com/openvswitch/ovs/blob/master/INSTALL.DPDK.md> guide to >install OVS with DPDK. >I manage till *2.3 Install OVS* > >> cd $OVS_DIR >> ./boot.sh >> ./configure --with-dpdk=$DPDK_BUILD > >all runs fine without any error but when I do > >> make install > >It fails. > >Here's the output > >root@ubuntu:/usr/src/openvswitch-2.5.0# make install >make install-recursive >make[1]: Entering directory '/usr/src/openvswitch-2.5.0' >Making install in datapath >make[2]: Entering directory '/usr/src/openvswitch-2.5.0/datapath' >make[3]: Entering directory '/usr/src/openvswitch-2.5.0/datapath' >make[4]: Entering directory '/usr/src/openvswitch-2.5.0/datapath' >make[4]: Nothing to be done for 'install-exec-am'. >make[4]: Nothing to be done for 'install-data-am'. >make[4]: Leaving directory '/usr/src/openvswitch-2.5.0/datapath' >make[3]: Leaving directory '/usr/src/openvswitch-2.5.0/datapath' >make[2]: Leaving directory '/usr/src/openvswitch-2.5.0/datapath' >make[2]: Entering directory '/usr/src/openvswitch-2.5.0' >depbase=`echo lib/netdev-dpdk.lo | sed 's|[^/]*$|.deps/&|;s|\.lo$||'`;\ >/bin/bash ./libtool --tag=CC --mode=compile gcc -DHAVE_CONFIG_H -I. -I >./include -I ./include -I ./lib -I ./lib -I/usr/include -Wstrict-prototypes >-Wall -Wextra -Wno-sign-compare -Wpointer-arith -Wformat-security >-Wswitch-enum -Wunused-parameter -Wbad-function-cast -Wcast-align >-Wmissing-prototypes -Wmissing-field-initializers -fno-strict-aliasing >-mssse3 -I/usr/src/dpdk-16.07/x86_64-native-linuxapp-gcc/include >-D_FILE_OFFSET_BITS=64 -g -O2 -MT lib/netdev-dpdk.lo -MD -MP -MF >$depbase.Tpo -c -o lib/netdev-dpdk.lo lib/netdev-dpdk.c &&\ >mv -f $depbase.Tpo $depbase.Plo >libtool: compile: gcc -DHAVE_CONFIG_H -I. -I ./include -I ./include -I >./lib -I ./lib -I/usr/include -Wstrict-prototypes -Wall -Wextra >-Wno-sign-compare -Wpointer-arith -Wformat-security -Wswitch-enum >-Wunused-parameter -Wbad-function-cast -Wcast-align -Wmissing-prototypes >-Wmissing-field-initializers -fno-strict-aliasing -mssse3 >-I/usr/src/dpdk-16.07/x86_64-native-linuxapp-gcc/include >-D_FILE_OFFSET_BITS=64 -g -O2 -MT lib/netdev-dpdk.lo -MD -MP -MF >lib/.deps/netdev-dpdk.Tpo -c lib/netdev-dpdk.c -o lib/netdev-dpdk.o >lib/netdev-dpdk.c: In function ‘__rte_pktmbuf_init’: >lib/netdev-dpdk.c:293:5: warning: implicit declaration of function >‘RTE_MBUF_ASSERT’ [-Wimplicit-function-declaration] >RTE_MBUF_ASSERT(mp->elt_size >= sizeof(struct dp_packet)); >^ >lib/netdev-dpdk.c: In function ‘netdev_dpdk_vhost_user_construct’: >lib/netdev-dpdk.c:708:11: error: too few arguments to function >‘rte_vhost_driver_register’ >err = rte_vhost_driver_register(netdev->vhost_id); >^ >In file included from lib/netdev-dpdk.c:56:0: >/usr/src/dpdk-16.07/x86_64-native-linuxapp-gcc/include/rte_virtio_net.h:95:5: >note: declared here >int rte_vhost_driver_register(const char *path, uint64_t flags); >^ >lib/netdev-dpdk.c: In function ‘is_vhost_running’: >lib/netdev-dpdk.c:995:32: error: dereferencing pointer to incomplete type >‘struct virtio_net’ >return (dev != NULL && (dev->flags & VIRTIO_DEV_RUNNING)); >^ >lib/netdev-dpdk.c:995:42: error: ‘VIRTIO_DEV_RUNNING’ undeclared (first use >in this function) >return (dev != NULL && (dev->flags & VIRTIO_DEV_RUNNING)); >^ >lib/netdev-dpdk.c:995:42: note: each undeclared identifier is reported only >once for each function it appears in >lib/netdev-dpdk.c: In function ‘netdev_dpdk_vhost_rxq_recv’: >lib/netdev-dpdk.c:1049:37: warning: passing argument 1 of >‘rte_vhost_dequeue_burst’ makes integer from pointer without a cast >[-Wint-conversion] >nb_rx = rte_vhost_dequeue_burst(virtio_dev, qid * VIRTIO_QNUM + VIRTIO_TXQ, >^ >In file included from lib/netdev-dpdk.c:56:0: >/usr/src/dpdk-16.07/x86_64-native-linuxapp-gcc/include/rte_virtio_net.h:194:10: >note: expected ‘int’ but argument is of type ‘struct virtio_net *’ >uint16_t rte_vhost_dequeue_burst(int vid, uint16_t queue_id, >^ >lib/netdev-dpdk.c: In function ‘__netdev_dpdk_vhost_send’: >lib/netdev-dpdk.c:1138:43: warning: passing argument 1 of >‘rte_vhost_enqueue_burst’ makes integer from pointer without a cast >[-Wint-conversion] >tx_pkts = rte_vhost_enqueue_burst(virtio_dev, vhost_qid, >^ >In file included from lib/netdev-dpdk.c:56:0: >/usr/src/dpdk-16.07/x86_64-native-linuxapp-gcc/include/rte_virtio_net.h:174:10: >note: expected ‘int’ but argument is of type ‘struct virtio_net *’ >uint16_t rte_vhost_enqueue_burst(int vid, uint16_t queue_id, >^ >lib/netdev-dpdk.c:1157:21: warning: implicit declaration of function >‘rte_vring_available_entries’ [-Wimplicit-function-declaration] >while (!rte_vring_available_entries(virtio_dev, vhost_qid)) { >^ >lib/netdev-dpdk.c: In function ‘netdev_dpdk_get_stats’: >lib/netdev-dpdk.c:1526:33: error: ‘struct rte_eth_stats’ has no member >named ‘imcasts’ >stats->multicast = rte_stats.imcasts; >^ >lib/netdev-dpdk.c: In function ‘netdev_dpdk_get_features’: >lib/netdev-dpdk.c:1569:29: error: ‘ETH_LINK_AUTONEG_DUPLEX’ undeclared >(first use in this function) >if (link.link_duplex == ETH_LINK_AUTONEG_DUPLEX) { >^ >lib/netdev-dpdk.c:1574:32: error: ‘ETH_LINK_SPEED_10’ undeclared (first use >in this function) >if (link.link_speed == ETH_LINK_SPEED_10) { >^ >lib/netdev-dpdk.c:1577:32: error: ‘ETH_LINK_SPEED_100’ undeclared (first >use in this function) >if (link.link_speed == ETH_LINK_SPEED_100) { >^ >lib/netdev-dpdk.c:1580:32: error: ‘ETH_LINK_SPEED_1000’ undeclared (first >use in this function) >if (link.link_speed == ETH_LINK_SPEED_1000) { >^ >lib/netdev-dpdk.c:1593:32: error: ‘ETH_LINK_SPEED_10000’ undeclared (first >use in this function) >if (link.link_speed == ETH_LINK_SPEED_10000) { >^ >lib/netdev-dpdk.c: In function ‘set_irq_status’: >lib/netdev-dpdk.c:1825:45: warning: passing argument 1 of >‘rte_vhost_enable_guest_notification’ makes integer from pointer without a >cast [-Wint-conversion] >rte_vhost_enable_guest_notification(dev, idx + VIRTIO_RXQ, 0); >^ >In file included from lib/netdev-dpdk.c:56:0: >/usr/src/dpdk-16.07/x86_64-native-linuxapp-gcc/include/rte_virtio_net.h:89:5: >note: expected ‘int’ but argument is of type ‘struct virtio_net *’ >int rte_vhost_enable_guest_notification(int vid, uint16_t queue_id, int >enable); >^ >lib/netdev-dpdk.c:1826:45: warning: passing argument 1 of >‘rte_vhost_enable_guest_notification’ makes integer from pointer without a >cast [-Wint-conversion] >rte_vhost_enable_guest_notification(dev, idx + VIRTIO_TXQ, 0); >^ >In file included from lib/netdev-dpdk.c:56:0: >/usr/src/dpdk-16.07/x86_64-native-linuxapp-gcc/include/rte_virtio_net.h:89:5: >note: expected ‘int’ but argument is of type ‘struct virtio_net *’ >int rte_vhost_enable_guest_notification(int vid, uint16_t queue_id, int >enable); >^ >In file included from /usr/include/string.h:630:0, >from ./lib/string.h:20, >from lib/netdev-dpdk.c:19: >lib/netdev-dpdk.c: In function ‘new_device’: >lib/netdev-dpdk.c:1906:52: error: ‘IF_NAME_SZ’ undeclared (first use in >this function) >if (strncmp(dev->ifname, netdev->vhost_id, IF_NAME_SZ) == 0) { >^ >lib/netdev-dpdk.c:1915:27: error: ‘VIRTIO_DEV_RUNNING’ undeclared (first >use in this function) >dev->flags |= VIRTIO_DEV_RUNNING; >^ >lib/netdev-dpdk.c: In function ‘destroy_device’: >lib/netdev-dpdk.c:1953:16: error: dereferencing pointer to incomplete type >‘volatile struct virtio_net’ >dev->flags &= ~VIRTIO_DEV_RUNNING; >^ >lib/netdev-dpdk.c:1953:28: error: ‘VIRTIO_DEV_RUNNING’ undeclared (first >use in this function) >dev->flags &= ~VIRTIO_DEV_RUNNING; >^ >In file included from /usr/include/string.h:630:0, >from ./lib/string.h:20, >from lib/netdev-dpdk.c:19: >lib/netdev-dpdk.c: In function ‘vring_state_changed’: >lib/netdev-dpdk.c:1996:55: error: ‘IF_NAME_SZ’ undeclared (first use in >this function) >if (strncmp(dev->ifname, vhost_dev->vhost_id, IF_NAME_SZ) == 0) { >^ >lib/netdev-dpdk.c: At top level: >lib/netdev-dpdk.c:2036:20: warning: initialization from incompatible >pointer type [-Wincompatible-pointer-types] >.new_device = new_device, >^ >lib/netdev-dpdk.c:2036:20: note: (near initialization for >‘virtio_net_device_ops.new_device’) >lib/netdev-dpdk.c:2037:23: warning: initialization from incompatible >pointer type [-Wincompatible-pointer-types] >.destroy_device = destroy_device, >^ >lib/netdev-dpdk.c:2037:23: note: (near initialization for >‘virtio_net_device_ops.destroy_device’) >lib/netdev-dpdk.c:2038:28: warning: initialization from incompatible >pointer type [-Wincompatible-pointer-types] >.vring_state_changed = vring_state_changed >^ >lib/netdev-dpdk.c:2038:28: note: (near initialization for >‘virtio_net_device_ops.vring_state_changed’) >lib/netdev-dpdk.c: In function ‘dpdk_vhost_cuse_class_init’: >lib/netdev-dpdk.c:2069:11: error: too few arguments to function >‘rte_vhost_driver_register’ >err = rte_vhost_driver_register(cuse_dev_name); >^ >In file included from lib/netdev-dpdk.c:56:0: >/usr/src/dpdk-16.07/x86_64-native-linuxapp-gcc/include/rte_virtio_net.h:95:5: >note: declared here >int rte_vhost_driver_register(const char *path, uint64_t flags); >^ >lib/netdev-dpdk.c: In function ‘is_vhost_running’: >lib/netdev-dpdk.c:996:1: warning: control reaches end of non-void function >[-Wreturn-type] >} >^ >Makefile:4027: recipe for target 'lib/netdev-dpdk.lo' failed >make[2]: *** [lib/netdev-dpdk.lo] Error 1 >make[2]: Leaving directory '/usr/src/openvswitch-2.5.0' >Makefile:4679: recipe for target 'install-recursive' failed >make[1]: *** [install-recursive] Error 1 >make[1]: Leaving directory '/usr/src/openvswitch-2.5.0' >Makefile:4985: recipe for target 'install' failed >make: *** [install] Error 2 > >I don't understand what am I missing. >DPDK is *dpdk-16.07* OpenVSwitch is *openvswitch-2.5.0* Ubuntu is *Ubuntu >16.04.1 LTS*
Hi Hussain, Are you using a release package of OVS? If so, Open vSwitch v2.5.0 doesn't support DPDK v16.07 - check INSTALL.DPDK.md in your codebase for the supported version of DPDK. If you've cloned from the OVS repo, what is your commit ID? DPDK v16.07 is only supported from commit 0a0f39df1d5a onwards. To resolve your issue, you'll either need to upgrade your OVS codebase, or use an older version of DPDK. Hope this helps. Cheers, Mark > >Any help will be appreciated. >Thank you. >-- >Regards >Hussain Nagri >+919739094973 > >-- > > >*Disclaimer:* > >*This communication including any accompanying attachments is intended only >for the use of the intended addressee(s)/recipient and contains information >that is legally PRIVILEGED, CONFIDENTIAL and PROPRIETARY to BankBazaar.com. >If you are not the intended recipient, any unauthorized review, >dissemination, distribution, disclosure or copying of this communication is >strictly prohibited and is unlawful. If you have received this >communication including any accompanying attachments in error, you are >requested to notify BankBazaar.com immediately by reply e-mail and >thereafter you are required to promptly delete it permanently from your >system/storage device. The contents of this communication do not constitute >financial or other professional advice nor does it form principal-agent >relationship, and is not a substitute for the need to seek advice from >BankBazaar.com on specific financial matters. The recipient is advised to >scan this email and any attachments with it for viruses. BankBazaar.com >does not accept any liability whatsoever for any damage or loss that may be* > *caused through this communication.* >_______________________________________________ >dev mailing list >dev@openvswitch.org >http://openvswitch.org/mailman/listinfo/dev _______________________________________________ dev mailing list dev@openvswitch.org http://openvswitch.org/mailman/listinfo/dev