[dpdk-dev] [PATCH v2] mk: fix ABI versioning compile error for combined shared library

Ferruh Yigit ferruh.yigit at intel.com
Tue Nov 3 12:33:46 CET 2015


On Tue, Nov 03, 2015 at 12:41:10PM +0200, Panu Matilainen wrote:
> On 11/03/2015 11:20 AM, Ferruh Yigit wrote:
>> On Tue, Nov 03, 2015 at 09:06:05AM +0200, Panu Matilainen wrote:
>>> On 11/02/2015 05:23 PM, Ferruh Yigit wrote:
>>>> Fixes following error:
>>>>     LD libdpdk.so
>>>>     /usr/bin/ld: /root/dpdk/build/lib/libdpdk.so: version node not found
>>>>     for symbol <function>@DPDK_x.y
>>>>
>>>> Defines version symbols in a fixed path libdpdk.map file and this
>>>> value hardcoded into makefile
>>>
>>> Hold on. What problem is this supposed to be fixing?
>> This patch is to fix combined library compilation error when ABI versining used.
>> Currently if ABI version macros used (VERSION_SYMBOL), we are not able to compile combined shared library.
>>
>>> If its for the bonding thing (as it'd appear from the threading), NAK.
>> Nothing directly related to the bonding, just issue observed in this thread.
>
> Okay, understood, it was just not clear from the description. Since there 
> are no users of VERSION_SYMBOL etc macros this error has not come up until 
> now.
>
>>
>>> The symbol versioning in
>>> that patch is confused needs to be fixed there instead of inventing strange
>>> workarounds elsewhere.
>>>
>> This is not intented to be a workaround but a fix, unless you have a better idea.
>
> The problem is, it undoes the other benefit of symbol versioning: hiding the 
> internal symbols. So in my eyes its more of a hack or a workaround than a 
> fix.
>
> I'd much much rather see this as a solution:
> http://dpdk.org/dev/patchwork/patch/4262/
>
What I observed from this, how/why combined library should be generated is under question, from that perspective I agree this patch is a hack.
If current method is used, this patch just fixes compile error, also patch is not related to versioning in combined library, which is still broken.

Thanks,
ferruh

> 	- Panu -


More information about the dev mailing list