log details
mellanox NIC over fabric
When compiling output error.
1. lack numa and cryptopp libraries
I add following two lines on src/cmake/modules/Finddpdk.cmake
===========================================
if(DPDK_FOUND)
if(EXISTS ${WITH_DPDK_MLX5})
list(APPEND check_LIBRARIES -libverbs)
endif()
+ list(APPEND check_LIBRARIES -lnuma)
+ list(APPEND check_LIBRARIES -lcryptopp)
set(DPDK_LIBRARIES
-Wl,--whole-archive ${check_LIBRARIES} -Wl,--no-whole-archive)
endif(DPDK_FOUND)
===========================================
2. At link step output error
multidefine xxxx,xxx,xxxx,xxx
i delete following lines on src/cmake/modules/BuildDPDK.cmake
===========================================
macro(build_dpdk)
set(DPDK_DIR ${CMAKE_BINARY_DIR}/src/dpdk)
do_build_dpdk(${DPDK_DIR})
set(DPDK_INCLUDE_DIR ${DPDK_DIR}/include)
# create the directory so cmake won't complain when looking at the imported
# target
file(MAKE_DIRECTORY ${DPDK_INCLUDE_DIR})
- foreach(c
- pci bus_pci
- eal
- mempool mempool_ring mempool_stack ring)
- add_library(dpdk::${c} STATIC IMPORTED)
- add_dependencies(dpdk::${c} dpdk-ext)
- set(dpdk_${c}_LIBRARY
- "${DPDK_DIR}/lib/${CMAKE_STATIC_LIBRARY_PREFIX}rte_${c}${CMAKE_STATIC_LIBRARY_SUFFIX}")
- set_target_properties(dpdk::${c} PROPERTIES
- INTERFACE_INCLUDE_DIRECTORIES ${DPDK_INCLUDE_DIR}
- IMPORTED_LOCATION "${dpdk_${c}_LIBRARY}")
- list(APPEND DPDK_LIBRARIES dpdk::${c})
- endforeach()
endmacro()
==============================================
next, compiling pass. but all binaries can not run.
output error
EAL: VFIO_RESOURCE_LIST tailq is already registered
initialize tailq: VFIO_RESOURCE_LIST
process exit
I have some incomprehension
1. currently i use mellanox NIC, but all "if(EXISTS ${WITH_DPDK_MLX5})" sentences maybe return false value,on src/cmake/modules/BuildDPDK.cmake, is it correct?