[dpdk-dev] [PATCH] common/mlx5: fix dlopen meson build

Matan Azrad matan at mellanox.com
Mon Feb 10 13:27:34 CET 2020

The glue shared library name was created by the common class FMT name,
driver_name_fmt = 'rte_common_ at 0@', which is not correlated with
LIB_GLUE_BASE = 'librte_pmd_mlx5_glue.so'.

This causes the dynamic linkage of the glue library to fail what
remained mlx5 drivers outside the PCI driver list.

The command:
build-meson/app/dpdk-testpmd -n 4  -w 0000:00:05.0 -w 0000:00:06.0 -- -i

The log:
common_mlx5: Cannot load glue library:
cannot open shared object file: No such file or directory

Adjust the shared library name to the LIB_GLUE_BASE definition.

Fixes: 7b4f1e6bd367 ("common/mlx5: introduce common library")

Signed-off-by: Matan Azrad <matan at mellanox.com>
 drivers/common/mlx5/meson.build | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/common/mlx5/meson.build b/drivers/common/mlx5/meson.build
index 2b70410..9cbd527 100644
--- a/drivers/common/mlx5/meson.build
+++ b/drivers/common/mlx5/meson.build
@@ -185,7 +185,7 @@ endif
 # Build Glue Library
 if pmd_dlopen and build
 	dlopen_name = 'mlx5_glue'
-	dlopen_lib_name = driver_name_fmt.format(dlopen_name)
+	dlopen_lib_name = 'rte_pmd_ at 0@'.format(dlopen_name)
 	dlopen_so_version = LIB_GLUE_VERSION
 	dlopen_sources = files('mlx5_glue.c')
 	dlopen_install_dir = [ eal_pmd_path + '-glue' ]

More information about the dev mailing list