From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from smtp.tuxdriver.com (charlotte.tuxdriver.com [70.61.120.58]) by dpdk.org (Postfix) with ESMTP id 7EC60AFD6 for ; Tue, 15 Apr 2014 20:06:40 +0200 (CEST) Received: from hmsreliant.think-freely.org ([2001:470:8:a08:7aac:c0ff:fec2:933b] helo=localhost) by smtp.tuxdriver.com with esmtpsa (TLSv1:AES128-SHA:128) (Exim 4.63) (envelope-from ) id 1Wa7kk-0002z2-9w; Tue, 15 Apr 2014 14:06:39 -0400 From: Neil Horman To: dev@dpdk.org Date: Tue, 15 Apr 2014 14:05:56 -0400 Message-Id: <1397585169-14537-3-git-send-email-nhorman@tuxdriver.com> X-Mailer: git-send-email 1.8.3.1 In-Reply-To: <1397585169-14537-1-git-send-email-nhorman@tuxdriver.com> References: <1397585169-14537-1-git-send-email-nhorman@tuxdriver.com> X-Spam-Score: -2.9 (--) X-Spam-Status: No Subject: [dpdk-dev] [PATCH 02/15] make: include whole archive on static link X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: patches and discussions about DPDK List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 15 Apr 2014 18:06:40 -0000 This happens automatically on dyanmic linking, but when linking an archive we need to to include the whole archive to make sure we call all the constructors. Not doing this causes them to be discarded due to the fact theres no symbolic reference connecting the pmds to the application. Signed-off-by: Neil Horman --- mk/rte.app.mk | 2 ++ 1 file changed, 2 insertions(+) diff --git a/mk/rte.app.mk b/mk/rte.app.mk index 072718a..5a0ef0c 100644 --- a/mk/rte.app.mk +++ b/mk/rte.app.mk @@ -206,6 +206,8 @@ endif ifeq ($(LINK_USING_CC),1) comma := , LDLIBS := $(addprefix -Wl$(comma),$(LDLIBS)) +LDLIBS := -Wl$(comma)--whole-archive $(LDLIBS) +LDLIBS += -Wl,--no-whole-archive -Wl,-z -Wl,muldefs LDFLAGS := $(addprefix -Wl$(comma),$(LDFLAGS)) override EXTRA_LDFLAGS := $(addprefix -Wl$(comma),$(EXTRA_LDFLAGS)) O_TO_EXE = $(CC) $(CFLAGS) $(LDFLAGS_$(@)) \ -- 1.8.3.1