[dpdk-dev] [PATCH] mk: --no-as-needed by default for linux exec-env

Gonzalez Monroy, Sergio sergio.gonzalez.monroy at intel.com
Fri Oct 31 10:02:01 CET 2014


> From: Neil Horman [mailto:nhorman at tuxdriver.com]
> Subject: Re: [dpdk-dev] [PATCH] mk: --no-as-needed by default for linux
> exec-env
> 
> Thank you, it does, though it raises an intersting question.  By flipping that
> switch around you definately solve the problem at hand, but you don't really
> close the bug completely.  The problem arises because librte_eal doesn't add
> a DT_NEEDED entry for librte_mempool despite the fact that it references
> symbols in that library.  It does this because we don't explicitly link with -
> lrte_mempool when we build librte_eal.  Normally thats ok, because libraries
> don't load on their own, and every application that needs to link rte_eal also
> needs to link rte_mempool, so the symbols happen to resolve properly.  But
> that may not always be the case for all libraries. It gives rise to the argument
> that building a single large library may be preferable, as we might otherwise
> need to create dependency chains where libraries fully specify their
> dependencies in their DT_NEEDED sections
> 
> Neil
> 
That is a better explanation of what is really going on :) , and it does rise an interesting question.
In that regard, there is an open RFC to discuss how to improve the current build system.
http://dpdk.org/ml/archives/dev/2014-October/007389.html

Thanks,
Sergio


More information about the dev mailing list