When doing a cross compiling it is common to use EXTRA_CFLAGS with --sysroot option to point to alternate root filesystem. This already works as expected for objects and executables, it just doesn't work correctly for shared libraries.
When a shared library is linked using CC this flag needs to be passed in order for libraries to be found. Signed-off-by: Stephen Hemminger <step...@networkplumber.org> --- mk/rte.shared.mk | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mk/rte.shared.mk b/mk/rte.shared.mk index 2b501ddb8480..a0620a3eb233 100644 --- a/mk/rte.shared.mk +++ b/mk/rte.shared.mk @@ -31,7 +31,7 @@ exe2cmd = $(strip $(call dotfile,$(patsubst %,%.cmd,$(1)))) ifeq ($(LINK_USING_CC),1) override EXTRA_LDFLAGS := $(call linkerprefix,$(EXTRA_LDFLAGS)) -O_TO_SO = $(CC) $(call linkerprefix,$(LDFLAGS)) $(LDFLAGS_$(@)) $(EXTRA_LDFLAGS) \ +O_TO_SO = $(CC) $(EXTRA_CFLAGS) $(call linkerprefix,$(LDFLAGS)) $(LDFLAGS_$(@)) $(EXTRA_LDFLAGS) \ -shared -o $@ $(OBJS-y) $(call linkerprefix,$(LDLIBS)) else O_TO_SO = $(LD) $(LDFLAGS) $(LDFLAGS_$(@)) $(EXTRA_LDFLAGS) \ -- 2.20.1