Building dpdk as a shared library on systems without their own native strlcpy (eg, glibc) fails, because we do not allow the explicit export of the helper rte_strlcpy().
It used to be an inline, but it's now a function. Building static, there's no problem but configured to build shared, the users of rte_strlcpy() cannot bind to the definition in librte_eal even though they give the library on their linker line, because it's not listed to be exported. This must also be applied if lib/librte_eal: import libbsd strlcpy is applied to allow shared build. BTW this is a clear instance where nothing else will do but use the api name on the commit title... Signed-off-by: Andy Green <a...@warmcat.com> --- lib/librte_eal/rte_eal_version.map | 1 + 1 file changed, 1 insertion(+) diff --git a/lib/librte_eal/rte_eal_version.map b/lib/librte_eal/rte_eal_version.map index 859723974..9d5b67903 100644 --- a/lib/librte_eal/rte_eal_version.map +++ b/lib/librte_eal/rte_eal_version.map @@ -241,6 +241,7 @@ DPDK_18.05 { rte_service_set_runstate_mapped_check; rte_service_set_stats_enable; rte_service_start_with_defaults; + rte_strlcpy; } DPDK_18.02;