Hi, I am trying to build the latest DPDK (18.02) but facing some issues on ARM64 platform.
I'm using the option CONFIG_RTE_MAJOR_ABI to set the SONAME to 18.02. ===== START ===== The error is connected to building the librte_pmd_dpaa.so. Please, see below: [ 405s] /usr/lib64/gcc/aarch64-suse-linux/7/../../../../aarch64-suse- linux/bin/ld: warning: librte_bus_dpaa.so.18.02, needed by /home/abuild/rpmbuild/BUILD/dpdk-18.02/arm64-armv8a-linuxapp-gcc- default/lib/librte_pmd_dpaa.so, not found (try using -rpath or -rpath-link) [ 405s] /usr/lib64/gcc/aarch64-suse-linux/7/../../../../aarch64-suse- linux/bin/ld: warning: librte_mempool_dpaa.so.18.02, needed by /home/abuild/rpmbuild/BUILD/dpdk-18.02/arm64-armv8a-linuxapp-gcc- default/lib/librte_pmd_dpaa.so, not found (try using -rpath or -rpath-link) [ 405s] /home/abuild/rpmbuild/BUILD/dpdk-18.02/arm64-armv8a-linuxapp-gcc- default/lib/librte_pmd_dpaa.so: undefined reference to `fman_if_reset_mcast_filt er_table@DPDK_17.11' [ 405s] /home/abuild/rpmbuild/BUILD/dpdk-18.02/arm64-armv8a-linuxapp-gcc- default/lib/librte_pmd_dpaa.so: undefined reference to `qman_alloc_pool_range@DP DK_18.02' [ 405s] /home/abuild/rpmbuild/BUILD/dpdk-18.02/arm64-armv8a-linuxapp-gcc- default/lib/librte_pmd_dpaa.so: undefined reference to `rte_dpaa_portal_init@DPD K_17.11' [ 405s] /home/abuild/rpmbuild/BUILD/dpdk-18.02/arm64-armv8a-linuxapp-gcc- default/lib/librte_pmd_dpaa.so: undefined reference to `fman_if_add_mac_addr@DPD K_17.11' [ 405s] /home/abuild/rpmbuild/BUILD/dpdk-18.02/arm64-armv8a-linuxapp-gcc- default/lib/librte_pmd_dpaa.so: undefined reference to `fman_if_disable_rx@DPDK_ 17.11' [ 405s] /home/abuild/rpmbuild/BUILD/dpdk-18.02/arm64-armv8a-linuxapp-gcc- default/lib/librte_pmd_dpaa.so: undefined reference to `fman_if_set_fc_threshold @DPDK_17.11' [ 405s] /home/abuild/rpmbuild/BUILD/dpdk-18.02/arm64-armv8a-linuxapp-gcc- default/lib/librte_pmd_dpaa.so: undefined reference to `qman_delete_cgr@DPDK_18. 02' [ 405s] /home/abuild/rpmbuild/BUILD/dpdk-18.02/arm64-armv8a-linuxapp-gcc- default/lib/librte_pmd_dpaa.so: undefined reference to `qman_create_cgr@DPDK_18. 02' [ 405s] /home/abuild/rpmbuild/BUILD/dpdk-18.02/arm64-armv8a-linuxapp-gcc- default/lib/librte_pmd_dpaa.so: undefined reference to `qman_dqrr_consume@DPDK_1 7.11' [ 405s] /home/abuild/rpmbuild/BUILD/dpdk-18.02/arm64-armv8a-linuxapp-gcc- default/lib/librte_pmd_dpaa.so: undefined reference to `qman_global_init@DPDK_17 .11' [ 405s] /home/abuild/rpmbuild/BUILD/dpdk-18.02/arm64-armv8a-linuxapp-gcc- default/lib/librte_pmd_dpaa.so: undefined reference to `fman_if_promiscuous_disa ble@DPDK_17.11' [ 405s] /home/abuild/rpmbuild/BUILD/dpdk-18.02/arm64-armv8a-linuxapp-gcc- default/lib/librte_pmd_dpaa.so: undefined reference to `per_lcore_dpaa_io@DPDK_1 8.02' [ 405s] /home/abuild/rpmbuild/BUILD/dpdk-18.02/arm64-armv8a-linuxapp-gcc- default/lib/librte_pmd_dpaa.so: undefined reference to `dpaa_svr_family@DPDK_18. 02' [ 405s] /home/abuild/rpmbuild/BUILD/dpdk-18.02/arm64-armv8a-linuxapp-gcc- default/lib/librte_pmd_dpaa.so: undefined reference to `fman_if_clear_mac_addr@D PDK_17.11' [ 405s] /home/abuild/rpmbuild/BUILD/dpdk-18.02/arm64-armv8a-linuxapp-gcc- default/lib/librte_pmd_dpaa.so: undefined reference to `fman_if_enable_rx@DPDK_1 7.11' [ 405s] /home/abuild/rpmbuild/BUILD/dpdk-18.02/arm64-armv8a-linuxapp-gcc- default/lib/librte_pmd_dpaa.so: undefined reference to `qman_init_fq@DPDK_17.11' [ 405s] /home/abuild/rpmbuild/BUILD/dpdk-18.02/arm64-armv8a-linuxapp-gcc- default/lib/librte_pmd_dpaa.so: undefined reference to `per_lcore_held_bufs@DPDK _18.02' [ 405s] /home/abuild/rpmbuild/BUILD/dpdk-18.02/arm64-armv8a-linuxapp-gcc- default/lib/librte_pmd_dpaa.so: undefined reference to `dpaa_logtype_pmd@DPDK_17 .11' [ 405s] /home/abuild/rpmbuild/BUILD/dpdk-18.02/arm64-armv8a-linuxapp-gcc- default/lib/librte_pmd_dpaa.so: undefined reference to `fman_if_set_maxfrm@DPDK_ 17.11' [ 405s] /home/abuild/rpmbuild/BUILD/dpdk-18.02/arm64-armv8a-linuxapp-gcc- default/lib/librte_pmd_dpaa.so: undefined reference to `fman_if_stats_get@DPDK_1 7.11' [ 405s] /home/abuild/rpmbuild/BUILD/dpdk-18.02/arm64-armv8a-linuxapp-gcc- default/lib/librte_pmd_dpaa.so: undefined reference to `fman_dealloc_bufs_mask_h i@DPDK_17.11' [ 405s] /home/abuild/rpmbuild/BUILD/dpdk-18.02/arm64-armv8a-linuxapp-gcc- default/lib/librte_pmd_dpaa.so: undefined reference to `fman_if_get_fc_threshold @DPDK_17.11' [ 405s] /home/abuild/rpmbuild/BUILD/dpdk-18.02/arm64-armv8a-linuxapp-gcc- default/lib/librte_pmd_dpaa.so: undefined reference to `fman_if_loopback_disable @DPDK_17.11' [ 405s] /home/abuild/rpmbuild/BUILD/dpdk-18.02/arm64-armv8a-linuxapp-gcc- default/lib/librte_pmd_dpaa.so: undefined reference to `qman_dequeue@DPDK_17.11' [ 405s] /home/abuild/rpmbuild/BUILD/dpdk-18.02/arm64-armv8a-linuxapp-gcc- default/lib/librte_pmd_dpaa.so: undefined reference to `dpaa_netcfg@DPDK_17.11' [ 405s] /home/abuild/rpmbuild/BUILD/dpdk-18.02/arm64-armv8a-linuxapp-gcc- default/lib/librte_pmd_dpaa.so: undefined reference to `fman_if_promiscuous_enab le@DPDK_17.11' [ 405s] /home/abuild/rpmbuild/BUILD/dpdk-18.02/arm64-armv8a-linuxapp-gcc- default/lib/librte_pmd_dpaa.so: undefined reference to `bman_acquire@DPDK_17.11' [ 405s] /home/abuild/rpmbuild/BUILD/dpdk-18.02/arm64-armv8a-linuxapp-gcc- default/lib/librte_pmd_dpaa.so: undefined reference to `fman_if_set_mcast_filter _table@DPDK_17.11' [ 405s] /home/abuild/rpmbuild/BUILD/dpdk-18.02/arm64-armv8a-linuxapp-gcc- default/lib/librte_pmd_dpaa.so: undefined reference to `fman_if_discard_rx_error s@DPDK_17.11' [ 405s] /home/abuild/rpmbuild/BUILD/dpdk-18.02/arm64-armv8a-linuxapp-gcc- default/lib/librte_pmd_dpaa.so: undefined reference to `qman_set_vdq@DPDK_17.11' [ 405s] /home/abuild/rpmbuild/BUILD/dpdk-18.02/arm64-armv8a-linuxapp-gcc- default/lib/librte_pmd_dpaa.so: undefined reference to `rte_dpaa_portal_fq_init@ DPDK_18.02' [ 405s] /home/abuild/rpmbuild/BUILD/dpdk-18.02/arm64-armv8a-linuxapp-gcc- default/lib/librte_pmd_dpaa.so: undefined reference to `qman_portal_poll_rx@DPDK _18.02' [ 405s] /home/abuild/rpmbuild/BUILD/dpdk-18.02/arm64-armv8a-linuxapp-gcc- default/lib/librte_pmd_dpaa.so: undefined reference to `qman_modify_cgr@DPDK_18. 02' [ 405s] /home/abuild/rpmbuild/BUILD/dpdk-18.02/arm64-armv8a-linuxapp-gcc- default/lib/librte_pmd_dpaa.so: undefined reference to `qman_create_fq@DPDK_17.1 1' [ 405s] /home/abuild/rpmbuild/BUILD/dpdk-18.02/arm64-armv8a-linuxapp-gcc- default/lib/librte_pmd_dpaa.so: undefined reference to `qman_query_fq_frm_cnt@DP DK_18.02' [ 405s] /home/abuild/rpmbuild/BUILD/dpdk-18.02/arm64-armv8a-linuxapp-gcc- default/lib/librte_pmd_dpaa.so: undefined reference to `rte_dpaa_driver_register @DPDK_17.11' [ 405s] /home/abuild/rpmbuild/BUILD/dpdk-18.02/arm64-armv8a-linuxapp-gcc- default/lib/librte_pmd_dpaa.so: undefined reference to `fman_ip_rev@DPDK_17.11' [ 405s] /home/abuild/rpmbuild/BUILD/dpdk-18.02/arm64-armv8a-linuxapp-gcc- default/lib/librte_pmd_dpaa.so: undefined reference to `fman_if_get_fc_quanta@DP DK_17.11' [ 405s] /home/abuild/rpmbuild/BUILD/dpdk-18.02/arm64-armv8a-linuxapp-gcc- default/lib/librte_pmd_dpaa.so: undefined reference to `fman_if_stats_get_all@DP DK_17.11' [ 405s] /home/abuild/rpmbuild/BUILD/dpdk-18.02/arm64-armv8a-linuxapp-gcc- default/lib/librte_pmd_dpaa.so: undefined reference to `qman_enqueue_multi@DPDK_ 17.11' [ 405s] /home/abuild/rpmbuild/BUILD/dpdk-18.02/arm64-armv8a-linuxapp-gcc- default/lib/librte_pmd_dpaa.so: undefined reference to `fman_if_set_fdoff@DPDK_1 7.11' [ 405s] /home/abuild/rpmbuild/BUILD/dpdk-18.02/arm64-armv8a-linuxapp-gcc- default/lib/librte_pmd_dpaa.so: undefined reference to `fman_if_set_ic_params@DP DK_17.11' [ 405s] /home/abuild/rpmbuild/BUILD/dpdk-18.02/arm64-armv8a-linuxapp-gcc- default/lib/librte_pmd_dpaa.so: undefined reference to `fman_if_get_fdoff@DPDK_1 7.11' [ 405s] /home/abuild/rpmbuild/BUILD/dpdk-18.02/arm64-armv8a-linuxapp-gcc- default/lib/librte_pmd_dpaa.so: undefined reference to `bman_global_init@DPDK_17 .11' [ 405s] /home/abuild/rpmbuild/BUILD/dpdk-18.02/arm64-armv8a-linuxapp-gcc- default/lib/librte_pmd_dpaa.so: undefined reference to `qman_alloc_cgrid_range@D PDK_18.02' [ 405s] /home/abuild/rpmbuild/BUILD/dpdk-18.02/arm64-armv8a-linuxapp-gcc- default/lib/librte_pmd_dpaa.so: undefined reference to `fman_if_loopback_enable@ DPDK_17.11' [ 405s] /home/abuild/rpmbuild/BUILD/dpdk-18.02/arm64-armv8a-linuxapp-gcc- default/lib/librte_pmd_dpaa.so: undefined reference to `fman_if_stats_reset@DPDK _17.11' [ 405s] /home/abuild/rpmbuild/BUILD/dpdk-18.02/arm64-armv8a-linuxapp-gcc- default/lib/librte_pmd_dpaa.so: undefined reference to `fman_if_set_bp@DPDK_17.1 1' [ 405s] /home/abuild/rpmbuild/BUILD/dpdk-18.02/arm64-armv8a-linuxapp-gcc- default/lib/librte_pmd_dpaa.so: undefined reference to `qman_reserve_fqid_range@ DPDK_17.11' [ 405s] /home/abuild/rpmbuild/BUILD/dpdk-18.02/arm64-armv8a-linuxapp-gcc- default/lib/librte_pmd_dpaa.so: undefined reference to `qman_release_cgrid_range @DPDK_18.02' [ 405s] /home/abuild/rpmbuild/BUILD/dpdk-18.02/arm64-armv8a-linuxapp-gcc- default/lib/librte_pmd_dpaa.so: undefined reference to `fman_if_set_fc_quanta@DP DK_17.11' [ 405s] /home/abuild/rpmbuild/BUILD/dpdk-18.02/arm64-armv8a-linuxapp-gcc- default/lib/librte_pmd_dpaa.so: undefined reference to `fman_dealloc_bufs_mask_l o@DPDK_17.11' [ 405s] /home/abuild/rpmbuild/BUILD/dpdk-18.02/arm64-armv8a-linuxapp-gcc- default/lib/librte_pmd_dpaa.so: undefined reference to `rte_dpaa_bpid_info@DPDK_ 17.11' [ 405s] collect2: error: ld returned 1 exit status ===== END ===== Despite the error saying that the librte_mempool_dpaa.so.18.02 cannot be found, I can see it being built somewhere earlier in the compilation process. Please, see below: ===== START ===== [ 216s] gcc -DVERSION="18.02" -L/home/abuild/rpmbuild/BUILD/dpdk-18.02/arm64- armv8a-linuxapp-gcc-default/lib -Wl,--version- script=/home/abuild/rpmbuild/BUILD/dpdk- 18.02/drivers/mempool/dpaa2/rte_mempool_dpaa2_version.map -shared dpaa2_hw_mempool.o -z defs -lrte_bus_fslmc -lrte_eal -lrte_mempool -lrte_ring -Wl,-soname,librte_mempool_dpaa2.so.18.02 -o librte_mempool_dpaa2.so.18.02 [ 216s] gcc -DVERSION="18.02" -L/home/abuild/rpmbuild/BUILD/dpdk-18.02/arm64- armv8a-linuxapp-gcc-default/lib -Wl,--version- script=/home/abuild/rpmbuild/BUILD/dpdk- 18.02/drivers/mempool/dpaa/rte_mempool_dpaa_version.map -shared dpaa_mempool.o -z defs -lrte_bus_dpaa -lrte_eal -lrte_mempool -lrte_ring -Wl,- soname,librte_mempool_dpaa.so.18.02 -o librte_mempool_dpaa.so.18.02 [ 216s] INSTALL-LIB librte_mempool_dpaa2.so.18.02 [ 216s] cp -f librte_mempool_dpaa2.so.18.02 /home/abuild/rpmbuild/BUILD/dpdk- 18.02/arm64-armv8a-linuxapp-gcc-default/lib [ 216s] ln -s -f librte_mempool_dpaa2.so.18.02 /home/abuild/rpmbuild/BUILD/dpdk-18.02/arm64-armv8a-linuxapp-gcc- default/lib/librte_mempool_dpaa2.so [ 217s] INSTALL-LIB librte_mempool_dpaa.so.18.02 [ 217s] cp -f librte_mempool_dpaa.so.18.02 /home/abuild/rpmbuild/BUILD/dpdk- 18.02/arm64-armv8a-linuxapp-gcc-default/lib [ 217s] ln -s -f librte_mempool_dpaa.so.18.02 /home/abuild/rpmbuild/BUILD/dpdk- 18.02/arm64-armv8a-linuxapp-gcc-default/lib/librte_mempool_dpaa.so ===== END ===== Cheers, -- Marco V SUSE LINUX GmbH | GF: Felix Imendörffer, Jane Smithard, Graham Norton HRB 21284 (AG Nürnberg) Maxfeldstr. 5, D-90409, Nürnberg