When next ABI is enabled, the shared lib extension is .so.x.1. That's why a double basename was introduced. But the "ifeq NEXT_ABI" was forgotten, removing the .so extension when NEXT_ABI is disabled. It was preventing the linker from finding the .so libraries.
Fixes: 506f51cc0da7 ("mk: enable next abi preview") Reported-by: John McNamara <john.mcnamara at intel.com> Signed-off-by: Thomas Monjalon <thomas.monjalon at 6wind.com> --- mk/rte.lib.mk | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/mk/rte.lib.mk b/mk/rte.lib.mk index f15de9b..9ff5cce 100644 --- a/mk/rte.lib.mk +++ b/mk/rte.lib.mk @@ -173,7 +173,11 @@ $(RTE_OUTPUT)/lib/$(LIB): $(LIB) @[ -d $(RTE_OUTPUT)/lib ] || mkdir -p $(RTE_OUTPUT)/lib $(Q)cp -f $(LIB) $(RTE_OUTPUT)/lib ifeq ($(CONFIG_RTE_BUILD_SHARED_LIB),y) +ifeq ($(CONFIG_RTE_NEXT_ABI),y) $(Q)ln -s -f $< $(basename $(basename $@)) +else + $(Q)ln -s -f $< $(basename $@) +endif endif # -- 2.4.2