Hi Jane, What host OS are you using? What version of DPDK do you have installed?
Can you try using the latest stable release, UHD 3.14.1.1, master can be unstable. Regards, Nate Temple On Sun, Oct 27, 2019 at 10:24 AM Jane Zhang via USRP-users < usrp-users@lists.ettus.com> wrote: > hello, i am a new user with ubuntu and uhd. Later i need to build gnuradio. > I build uhd(look from changelog, release 3.15). There were errors about > dpdk as follows. > Would you please help to solve this problem. I have time to finish this > task. > Thank you so much! > > dell@dell-XPS-15-9550:~/uhd/host/build$ cmake ../ > -- > -- Configuring the Python interpreter... > -- Manually determining build Python version... > -- Python interpreter: /usr/bin/python3.6 Version: 3.6.8 > -- Override with: -DPYTHON_EXECUTABLE=<path-to-python> > -- Manually determining runtime Python version... > -- Python runtime interpreter: /usr/bin/python3.6 Version: 3.6.8 > -- Override with: -DRUNTIME_PYTHON_EXECUTABLE=<path-to-python> > -- Finding Python Libraries... > -- Could not find Python Libraries. > -- Operating on master branch. > -- Using UHD Images Directory: /usr/local/share/uhd/images > -- Build type not specified: defaulting to release. > -- > -- Configuring Boost C++ Libraries... > -- Looking for optional Boost components... > -- Found Boost: /usr/include (found suitable version "1.58.0", minimum > required is "1.58") > -- Looking for required Boost components... > -- Found Boost: /usr/include (found suitable version "1.58.0", minimum > required is "1.58") found components: chrono date_time filesystem > program_options regex system unit_test_framework serialization thread > atomic > -- Boost include directories: /usr/include > -- Boost library directories: /usr/lib/x86_64-linux-gnu > -- Boost libraries: > /usr/lib/x86_64-linux-gnu/libboost_chrono.so;/usr/lib/x86_64-linux-gnu/libboost_date_time.so;/usr/lib/x86_64-linux-gnu/libboost_filesystem.so;/usr/lib/x86_64-linux-gnu/libboost_program_options.so;/usr/lib/x86_64-linux-gnu/libboost_regex.so;/usr/lib/x86_64-linux-gnu/libboost_system.so;/usr/lib/x86_64-linux-gnu/libboost_unit_test_framework.so;/usr/lib/x86_64-linux-gnu/libboost_serialization.so;/usr/lib/x86_64-linux-gnu/libboost_thread.so;-lpthread;/usr/lib/x86_64-linux-gnu/libboost_atomic.so > -- > -- Python checking for Python version 2.7 or greater > -- Python checking for Python version 2.7 or greater - found > -- > -- Python checking for Mako templates 0.4.2 or greater > -- Python checking for Mako templates 0.4.2 or greater - found > -- > -- Python checking for requests 2.0 or greater > -- Python checking for requests 2.0 or greater - found > -- > -- Python checking for numpy 1.7 or greater > -- Python checking for numpy 1.7 or greater - found > -- > -- Configuring LibUHD support... > -- Dependency Boost_FOUND = TRUE > -- Dependency HAVE_PYTHON_PLAT_MIN_VERSION = TRUE > -- Dependency HAVE_PYTHON_MODULE_MAKO = TRUE > -- Enabling LibUHD support. > -- Override with -DENABLE_LIBUHD=ON/OFF > -- > -- Configuring LibUHD - C API support... > -- Dependency ENABLE_LIBUHD = ON > -- Enabling LibUHD - C API support. > -- Override with -DENABLE_C_API=ON/OFF > -- > -- Configuring LibUHD - Python API support... > -- Dependency ENABLE_LIBUHD = ON > -- Dependency HAVE_PYTHON_MODULE_NUMPY = TRUE > -- Dependency HAVE_PYTHON_LIBS = FALSE > -- Disabling LibUHD - Python API support. > -- Override with -DENABLE_PYTHON_API=ON/OFF > -- > -- Configuring Examples support... > -- Dependency ENABLE_LIBUHD = ON > -- Enabling Examples support. > -- Override with -DENABLE_EXAMPLES=ON/OFF > -- > -- Configuring Utils support... > -- Dependency ENABLE_LIBUHD = ON > -- Enabling Utils support. > -- Override with -DENABLE_UTILS=ON/OFF > -- > -- Configuring Tests support... > -- Dependency ENABLE_LIBUHD = ON > -- Enabling Tests support. > -- Override with -DENABLE_TESTS=ON/OFF > -- > -- Could NOT find LIBERIO (missing: LIBERIO_LIBRARY LIBERIO_INCLUDE_DIR) > -- > -- Configuring LIBERIO support... > -- Dependency ENABLE_LIBUHD = ON > -- Dependency LIBERIO_FOUND = FALSE > -- Disabling LIBERIO support. > -- Override with -DENABLE_LIBERIO=ON/OFF > -- > -- Configuring USB support... > -- Dependency ENABLE_LIBUHD = ON > -- Dependency LIBUSB_FOUND = TRUE > -- Enabling USB support. > -- Override with -DENABLE_USB=ON/OFF > -- > -- Configuring B100 support... > -- Dependency ENABLE_LIBUHD = ON > -- Dependency ENABLE_USB = ON > -- Enabling B100 support. > -- Override with -DENABLE_B100=ON/OFF > -- > -- Configuring B200 support... > -- Dependency ENABLE_LIBUHD = ON > -- Dependency ENABLE_USB = ON > -- Enabling B200 support. > -- Override with -DENABLE_B200=ON/OFF > -- > -- Configuring USRP1 support... > -- Dependency ENABLE_LIBUHD = ON > -- Dependency ENABLE_USB = ON > -- Enabling USRP1 support. > -- Override with -DENABLE_USRP1=ON/OFF > -- > -- Configuring USRP2 support... > -- Dependency ENABLE_LIBUHD = ON > -- Enabling USRP2 support. > -- Override with -DENABLE_USRP2=ON/OFF > -- > -- Configuring X300 support... > -- Dependency ENABLE_LIBUHD = ON > -- Enabling X300 support. > -- Override with -DENABLE_X300=ON/OFF > -- > -- Configuring N230 support... > -- Dependency ENABLE_LIBUHD = ON > -- Enabling N230 support. > -- Override with -DENABLE_N230=ON/OFF > -- > -- Configuring MPMD support... > -- Dependency ENABLE_LIBUHD = ON > -- Enabling MPMD support. > -- Override with -DENABLE_MPMD=ON/OFF > -- > -- Configuring N300 support... > -- Dependency ENABLE_LIBUHD = ON > -- Dependency ENABLE_MPMD = ON > -- Enabling N300 support. > -- Override with -DENABLE_N300=ON/OFF > -- > -- Configuring N320 support... > -- Dependency ENABLE_LIBUHD = ON > -- Dependency ENABLE_MPMD = ON > -- Enabling N320 support. > -- Override with -DENABLE_N320=ON/OFF > -- > -- Configuring E320 support... > -- Dependency ENABLE_LIBUHD = ON > -- Dependency ENABLE_MPMD = ON > -- Enabling E320 support. > -- Override with -DENABLE_E320=ON/OFF > -- > -- Configuring E300 support... > -- Dependency ENABLE_LIBUHD = ON > -- Dependency ENABLE_MPMD = ON > -- Enabling E300 support. > -- Override with -DENABLE_E300=ON/OFF > -- > -- Configuring OctoClock support... > -- Dependency ENABLE_LIBUHD = ON > -- Enabling OctoClock support. > -- Override with -DENABLE_OCTOCLOCK=ON/OFF > -- > -- Configuring DPDK support... > -- Dependency ENABLE_MPMD = ON > -- Dependency DPDK_FOUND = TRUE > -- Enabling DPDK support. > -- Override with -DENABLE_DPDK=ON/OFF > -- > -- Compiling MPMD with DPDK support... > -- > -- Configuring priority scheduling... > -- Priority scheduling supported through pthread_setschedparam. > -- Setting thread names is supported through pthread_setname_np. > -- > -- Configuring high resolution timing... > -- High resolution timing supported through clock_gettime. > -- > -- Configuring module loading... > -- Module loading supported through dlopen. > -- > -- Processing NI-RIO FPGA LVBITX Bitstreams... > -- Using x300.lvbitx_base for codegen > -- Using x310.lvbitx_base for codegen > -- > -- USB support enabled via libusb. > -- > -- Configuring interface address discovery... > -- Interface address discovery supported through getifaddrs. > -- > -- Loading build info. > -- > -- Adding B2XX device test target > -- Adding X3x0 device test target > -- Adding E3XX device test target > -- Adding N3XX device test target > -- Adding E32x device test target > -- > -- > -- Configuring Manual support... > -- Dependency DOXYGEN_FOUND = YES > -- Enabling Manual support. > -- Override with -DENABLE_MANUAL=ON/OFF > -- > -- Configuring API/Doxygen support... > -- Dependency DOXYGEN_FOUND = YES > -- Enabling API/Doxygen support. > -- Override with -DENABLE_DOXYGEN=ON/OFF > -- > -- Found GZip: /bin/gzip > -- > -- Compressed Man Pages enabled > -- Override with -DENABLE_MAN_PAGE_COMPRESSION=ON/OFF > -- > -- Configuring Man Pages support... > -- Dependency NOT_WIN32 = TRUE > -- Dependency GZIP_FOUND = TRUE > -- Enabling Man Pages support. > -- Override with -DENABLE_MAN_PAGES=ON/OFF > -- > -- ###################################################### > -- # UHD enabled components > -- ###################################################### > -- * LibUHD > -- * LibUHD - C API > -- * Examples > -- * Utils > -- * Tests > -- * USB > -- * B100 > -- * B200 > -- * USRP1 > -- * USRP2 > -- * X300 > -- * N230 > -- * MPMD > -- * N300 > -- * N320 > -- * E320 > -- * E300 > -- * OctoClock > -- * DPDK > -- * Manual > -- * API/Doxygen > -- * Man Pages > -- > -- ###################################################### > -- # UHD disabled components > -- ###################################################### > -- * LibUHD - Python API > -- * LIBERIO > -- > -- ****************************************************** > -- * You are building the UHD development master branch. > -- * For production code, we recommend our stable, > -- * releases or using the release branch (maint). > -- ****************************************************** > -- Building version: 3.15.0.0-96-g0408f47b > -- Using install prefix: /usr/local > -- Configuring done > -- Generating done > -- Build files have been written to: /home/dell/uhd/host/build > dell@dell-XPS-15-9550:~/uhd/host/build$ make > [ 2%] Built target uhd_rpclib > Scanning dependencies of target uhd > [ 2%] Building C object > lib/CMakeFiles/uhd.dir/transport/uhd-dpdk/uhd_dpdk.c.o > In file included from > /home/dell/uhd/host/lib/transport/uhd-dpdk/uhd_dpdk.c:6:0: > /home/dell/uhd/host/lib/transport/uhd-dpdk/uhd_dpdk_ctx.h:102:23: error: > field ‘mac_addr’ has incomplete type > struct ether_addr mac_addr; > ^ > /home/dell/uhd/host/lib/transport/uhd-dpdk/uhd_dpdk_ctx.h:176:23: error: > field ‘mac_addr’ has incomplete type > struct ether_addr mac_addr; > ^ > In file included from > /home/dell/uhd/host/lib/transport/uhd-dpdk/uhd_dpdk.c:9:0: > /home/dell/uhd/host/lib/transport/uhd-dpdk/uhd_dpdk_driver.h:22:62: > warning: ‘struct arp_hdr’ declared inside parameter list > int _uhd_dpdk_process_arp(struct uhd_dpdk_port *port, struct arp_hdr > *arp_frame); > ^ > /home/dell/uhd/host/lib/transport/uhd-dpdk/uhd_dpdk_driver.h:22:62: > warning: its scope is only this definition or declaration, which is > probably not what you want > /home/dell/uhd/host/lib/transport/uhd-dpdk/uhd_dpdk_driver.h:24:34: > warning: ‘struct udp_hdr’ declared inside parameter list > struct udp_hdr *pkt, bool bcast); > ^ > /home/dell/uhd/host/lib/transport/uhd-dpdk/uhd_dpdk_driver.h:25:86: > warning: ‘struct ipv4_hdr’ declared inside parameter list > int _uhd_dpdk_process_ipv4(struct uhd_dpdk_port *port, struct rte_mbuf > *mbuf, struct ipv4_hdr *pk > > ^ > /home/dell/uhd/host/lib/transport/uhd-dpdk/uhd_dpdk.c: In function > ‘uhd_dpdk_get_eth_addr’: > /home/dell/uhd/host/lib/transport/uhd-dpdk/uhd_dpdk.c:55:31: error: > ‘ETHER_ADDR_LEN’ undeclared (first use in this function) > memset(retval.addr, 0xff, ETHER_ADDR_LEN); > ^ > /home/dell/uhd/host/lib/transport/uhd-dpdk/uhd_dpdk.c:55:31: note: each > undeclared identifier is reported only once for each function it appears in > /home/dell/uhd/host/lib/transport/uhd-dpdk/uhd_dpdk.c: In function > ‘uhd_dpdk_port_init’: > /home/dell/uhd/host/lib/transport/uhd-dpdk/uhd_dpdk.c:103:5: warning: > ‘rte_eth_dev_count’ is deprecated [-Wdeprecated-declarations] > if (port->id >= rte_eth_dev_count()) > ^ > In file included from > /home/dell/uhd/host/lib/transport/uhd-dpdk/uhd_dpdk_ctx.h:12:0, > from > /home/dell/uhd/host/lib/transport/uhd-dpdk/uhd_dpdk.c:6: > /usr/local/include/dpdk/rte_ethdev.h:1669:10: note: declared here > uint16_t rte_eth_dev_count(void); > ^ > In file included from /usr/local/include/dpdk/rte_ethdev.h:152:0, > from > /home/dell/uhd/host/lib/transport/uhd-dpdk/uhd_dpdk_ctx.h:12, > from > /home/dell/uhd/host/lib/transport/uhd-dpdk/uhd_dpdk.c:6: > /home/dell/uhd/host/lib/transport/uhd-dpdk/uhd_dpdk.c:122:108: warning: > format ‘%llx’ expects argument of type ‘long long unsigned int’, but > argument 5 has type ‘uint64_t {aka long unsigned int}’ [-Wformat=] > LOG(WARNING, EAL, "%d: Only supports RX offloads 0x%0llx\n", port->id, > dev_info.rx_offload_capa); > > ^ > /usr/local/include/dpdk/rte_log.h:324:25: note: in definition of macro > ‘RTE_LOG’ > RTE_LOGTYPE_ ## t, # t ": " __VA_ARGS__) > ^ > /home/dell/uhd/host/lib/transport/uhd-dpdk/uhd_dpdk.c:126:108: warning: > format ‘%llx’ expects argument of type ‘long long unsigned int’, but > argument 5 has type ‘uint64_t {aka long unsigned int}’ [-Wformat=] > LOG(WARNING, EAL, "%d: Only supports TX offloads 0x%0llx\n", port->id, > dev_info.tx_offload_capa); > > ^ > /usr/local/include/dpdk/rte_log.h:324:25: note: in definition of macro > ‘RTE_LOG’ > RTE_LOGTYPE_ ## t, # t ": " __VA_ARGS__) > ^ > /home/dell/uhd/host/lib/transport/uhd-dpdk/uhd_dpdk.c:134:13: error: > unknown field ‘jumbo_frame’ specified in initializer > .jumbo_frame = 1, > ^ > /home/dell/uhd/host/lib/transport/uhd-dpdk/uhd_dpdk.c:135:13: error: > unknown field ‘hw_ip_checksum’ specified in initializer > .hw_ip_checksum = 1, > ^ > /home/dell/uhd/host/lib/transport/uhd-dpdk/uhd_dpdk.c:135:31: warning: > initialized field overwritten [-Woverride-init] > .hw_ip_checksum = 1, > ^ > /home/dell/uhd/host/lib/transport/uhd-dpdk/uhd_dpdk.c:135:31: note: (near > initialization for ‘port_conf.rxmode.offloads’) > /home/dell/uhd/host/lib/transport/uhd-dpdk/uhd_dpdk.c:136:13: error: > unknown field ‘ignore_offload_bitfield’ specified in initializer > .ignore_offload_bitfield = 0, > ^ > /home/dell/uhd/host/lib/transport/uhd-dpdk/uhd_dpdk.c:136:40: warning: > excess elements in struct initializer > .ignore_offload_bitfield = 0, > ^ > /home/dell/uhd/host/lib/transport/uhd-dpdk/uhd_dpdk.c:136:40: note: (near > initialization for ‘port_conf.rxmode’) > /home/dell/uhd/host/lib/transport/uhd-dpdk/uhd_dpdk.c: In function > ‘uhd_dpdk_init’: > /home/dell/uhd/host/lib/transport/uhd-dpdk/uhd_dpdk.c:279:5: warning: > ‘rte_eth_dev_count’ is deprecated [-Wdeprecated-declarations] > ctx->num_ports = rte_eth_dev_count(); > ^ > In file included from > /home/dell/uhd/host/lib/transport/uhd-dpdk/uhd_dpdk_ctx.h:12:0, > from > /home/dell/uhd/host/lib/transport/uhd-dpdk/uhd_dpdk.c:6: > /usr/local/include/dpdk/rte_ethdev.h:1669:10: note: declared here > uint16_t rte_eth_dev_count(void); > ^ > lib/CMakeFiles/uhd.dir/build.make:3824: recipe for target > 'lib/CMakeFiles/uhd.dir/transport/uhd-dpdk/uhd_dpdk.c.o' failed > make[2]: *** [lib/CMakeFiles/uhd.dir/transport/uhd-dpdk/uhd_dpdk.c.o] > Error 1 > CMakeFiles/Makefile2:128: recipe for target 'lib/CMakeFiles/uhd.dir/all' > failed > make[1]: *** [lib/CMakeFiles/uhd.dir/all] Error 2 > Makefile:162: recipe for target 'all' failed > make: *** [all] Error 2 > > _______________________________________________ > USRP-users mailing list > USRP-users@lists.ettus.com > http://lists.ettus.com/mailman/listinfo/usrp-users_lists.ettus.com >
_______________________________________________ USRP-users mailing list USRP-users@lists.ettus.com http://lists.ettus.com/mailman/listinfo/usrp-users_lists.ettus.com