From mboxrd@z Thu Jan  1 00:00:00 1970
Return-Path: <smonroy@ecsmtp.ir.intel.com>
Received: from mga11.intel.com (mga11.intel.com [192.55.52.93])
 by dpdk.org (Postfix) with ESMTP id 43C5B7E6A
 for <dev@dpdk.org>; Thu,  9 Oct 2014 11:16:27 +0200 (CEST)
Received: from azsmga001.ch.intel.com ([10.2.17.19])
 by fmsmga102.fm.intel.com with ESMTP; 09 Oct 2014 02:23:47 -0700
X-ExtLoop1: 1
X-IronPort-AV: E=Sophos;i="5.04,683,1406617200"; d="scan'208";a="483015453"
Received: from irvmail001.ir.intel.com ([163.33.26.43])
 by azsmga001.ch.intel.com with ESMTP; 09 Oct 2014 02:23:23 -0700
Received: from sivswdev02.ir.intel.com (sivswdev02.ir.intel.com
 [10.237.217.46])
 by irvmail001.ir.intel.com (8.14.3/8.13.6/MailSET/Hub) with ESMTP id
 s999NME0025754; Thu, 9 Oct 2014 10:23:22 +0100
Received: from sivswdev02.ir.intel.com (localhost [127.0.0.1])
 by sivswdev02.ir.intel.com with ESMTP id s999NM7W000948;
 Thu, 9 Oct 2014 10:23:22 +0100
Received: (from smonroy@localhost)
 by sivswdev02.ir.intel.com with  id s999NL0O000920;
 Thu, 9 Oct 2014 10:23:21 +0100
Date: Thu, 9 Oct 2014 10:23:21 +0100
From: Sergio Gonzalez Monroy <sergio.gonzalez.monroy@intel.com>
To: Thomas Monjalon <thomas.monjalon@6wind.com>
Message-ID: <20141009092321.GA23978@sivswdev02.ir.intel.com>
References: <1412265386-26291-1-git-send-email-sergio.gonzalez.monroy@intel.com>
 <1412592755-3370-1-git-send-email-sergio.gonzalez.monroy@intel.com>
 <1412592755-3370-5-git-send-email-sergio.gonzalez.monroy@intel.com>
 <1449590.uzPBnEWXQD@xps13>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <1449590.uzPBnEWXQD@xps13>
User-Agent: Mutt/1.5.20 (2009-06-14)
Cc: dev@dpdk.org
Subject: Re: [dpdk-dev] [PATCH v2 4/4] Link apps/DSOs against EXECENV_LDLIBS
 with --as-needed
X-BeenThere: dev@dpdk.org
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: patches and discussions about DPDK <dev.dpdk.org>
List-Unsubscribe: <http://dpdk.org/ml/options/dev>,
 <mailto:dev-request@dpdk.org?subject=unsubscribe>
List-Archive: <http://dpdk.org/ml/archives/dev/>
List-Post: <mailto:dev@dpdk.org>
List-Help: <mailto:dev-request@dpdk.org?subject=help>
List-Subscribe: <http://dpdk.org/ml/listinfo/dev>,
 <mailto:dev-request@dpdk.org?subject=subscribe>
X-List-Received-Date: Thu, 09 Oct 2014 09:16:27 -0000

On Wed, Oct 08, 2014 at 05:38:52PM +0200, Thomas Monjalon wrote:
> Please could you explain why patch is needed?
> 
Hi Thomas,

Basically this patch just adds missing dependencies to DPDK DSOs. so the 
DL knows about them.

As an example, if we were to build an application against DPDK without
adding the libs defined in EXECENV_LDLIBS:

-- pre-patch:
LD test
test_red.o: In function `ovfl_test1':
test_red.c:(.text+0x1ac6): undefined reference to `log'
test_red.c:(.text+0x1ad3): undefined reference to `ceil'
test_red.o: In function `perf2_test':
test_red.c:(.text+0x2314): undefined reference to `pow'
test_red.o: In function `func_test3':
test_red.c:(.text+0x28d7): undefined reference to `pow'
test_red.o: In function `func_test6':
test_red.c:(.text+0x324c): undefined reference to `pow'
dpdk/x86_64-native-linuxapp-gcc/lib/libintel_dpdk.so: undefined reference to `dlopen'
dpdk/x86_64-native-linuxapp-gcc/lib/libintel_dpdk.so: undefined reference to `log2'
dpdk/x86_64-native-linuxapp-gcc/lib/libintel_dpdk.so: undefined reference to `dlerror'
dpdk/x86_64-native-linuxapp-gcc/lib/libintel_dpdk.so: undefined reference to `round'

-- post-patch:
LD test
/usr/bin/ld: test_red.o: undefined reference to symbol 'log@@GLIBC_2.2.5'
/usr/bin/ld: note: 'log@@GLIBC_2.2.5' is defined in DSO /lib64/libm.so.6 so try adding it to the linker command line
/lib64/libm.so.6: could not read symbols: Invalid operation

Thanks,
Sergio

> -- 
> Thomas