From: Panu Matilainen <pmatilai-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
To: "Gonzalez Monroy,
Sergio"
<sergio.gonzalez.monroy-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org>,
Neil Horman <nhorman-2XuSBdqkA4R54TAoqtyWWQ@public.gmane.org>
Cc: "dev-VfR2kkLFssw@public.gmane.org" <dev-VfR2kkLFssw@public.gmane.org>
Subject: Re: [PATCH 0/8] Improve build process
Date: Thu, 12 Feb 2015 11:22:59 +0200 [thread overview]
Message-ID: <54DC70F3.4020902@redhat.com> (raw)
In-Reply-To: <91383E96CE459D47BCE92EFBF5CE73B004F4AB9B-kPTMFJFq+rEMvF1YICWikbfspsVTdybXVpNB7YpNyf8@public.gmane.org>
On 02/11/2015 01:11 PM, Gonzalez Monroy, Sergio wrote:
>> From: Neil Horman [mailto:nhorman-2XuSBdqkA4R54TAoqtyWWQ@public.gmane.org]
>> Sent: Friday, January 30, 2015 6:13 PM
>> To: Gonzalez Monroy, Sergio
>> Cc: Thomas Monjalon; dev-VfR2kkLFssw@public.gmane.org
>> Subject: Re: [dpdk-dev] [PATCH 0/8] Improve build process
>>
>> On Fri, Jan 30, 2015 at 05:38:49PM +0000, Gonzalez Monroy, Sergio wrote:
>
> [snip]
>
>>>
>>> So would it be reasonable to add DT_NEEDED entries to all DPDK libraries
>> but EAL?
>>> If I understood what you were saying right, we could enforce the
>>> 'dependency' in the linker script with something like this:
>>> $ cat librte_eal.so
>>> INPUT( librte_eal.so.1 -lrte_mempool -lrte_malloc) We could have such
>>> linker script for librte_eal.so instead of the soft link once
>>> versioning is in place.
>>>
>> Correct.
>>
>>> Things that would be missing versus the proposed patch:
>>> - As I have mention in previous post, ldd info for EAL library would not
>> reflect
>>> its dependency to other DPDK libs.
>> librte_eal.so would no show those dependencies, as far as I know (though I
>> haven't explicitly checked). The subordunate libraries included in the input
>> line, may or may not show dependencies among themselves, depending on
>> your build setup (and the use of --no-as-needed and -l when linking the
>> individual .so libraries.
>>
>>> - I was enforcing resolving all references when building the libraries (-z
>> defs), so
>>> we either remove it altogether or skip eal.
>> I think thats correct, yes.
>>
>>> - All apps would show DT_NEEDED entries for a set of DPDK libraries that
>>> in most cases are required (eal, mempool, malloc, mbuf, ring VS
>>> dpdk_core)
>>>
>> I think apps linked to libdpdk_core would have DT_NEEDED entries for
>> libdpdk_core, not the subordonate libraries (though check me on that to be
>> sure).
>>
> Just checked on this and they do link against the subordinate libraries, although
> It does not really matter as we are dropping the 'core' library approach anyway.
>
>>> I think that the linker script approach is reasonable if we prefer to
>>> go that way instead of creating a core library.
>>>
>> I think it would make sense from a build environment point of view, in that it
>> allows library specific flags to be incorporated properly. I think the only
>> downside is that the individual libraries still need to be carried around
>> (though they can be ignored from an application build/run standpoint).
>> You're question should probably be asked of people using COMBINED_LIBS
>> currently to make sure that meets their needs, though I think it will.
>>
>> Neil
>>
> So I just realized that I was not having into account a possible scenario, where
> we have an app built with static dpdk libs then loading a dso with -d option.
>
> In such case, because the pmd would have DT_NEEDED entries, dlopen will fail.
> So to enable such scenario we would need to build PMDs without DT_NEEDED
> entries.
Hmm, for that to be a problem you'd need to have the PMD built against
shared dpdk libs and while the application is built against static dpdk
libs. I dont think that's a supportable scenario in any case.
Or is there some other scenario that I'm not seeing?
- Panu -
next prev parent reply other threads:[~2015-02-12 9:22 UTC|newest]
Thread overview: 63+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-01-29 15:20 [PATCH 0/8] Improve build process Sergio Gonzalez Monroy
[not found] ` <1422544811-26385-1-git-send-email-sergio.gonzalez.monroy-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org>
2015-01-29 15:20 ` [PATCH 1/8] mk: remove combined library and related options Sergio Gonzalez Monroy
2015-01-29 15:20 ` [PATCH 2/8] core: create new librte_core Sergio Gonzalez Monroy
2015-01-29 15:20 ` [PATCH 3/8] mk: new corelib makefile Sergio Gonzalez Monroy
2015-01-29 15:20 ` [PATCH 4/8] lib: update DEPDIRS variable Sergio Gonzalez Monroy
2015-01-29 15:20 ` [PATCH 5/8] lib: set LDLIBS for each library Sergio Gonzalez Monroy
2015-01-29 15:20 ` [PATCH 6/8] mk: use LDLIBS when linking shared libraries Sergio Gonzalez Monroy
2015-01-29 15:20 ` [PATCH 7/8] mk: update LDLIBS for app building Sergio Gonzalez Monroy
2015-01-29 15:20 ` [PATCH 8/8] mk: add -lpthread to linuxapp EXECENV_LDLIBS Sergio Gonzalez Monroy
2015-01-29 16:38 ` [PATCH 0/8] Improve build process Neil Horman
[not found] ` <20150129163859.GE1999-B26myB8xz7F8NnZeBjwnZQMhkBWG/bsMQH7oEaQurus@public.gmane.org>
2015-01-29 17:02 ` Thomas Monjalon
2015-01-29 17:04 ` Gonzalez Monroy, Sergio
[not found] ` <91383E96CE459D47BCE92EFBF5CE73B004F43D9B-kPTMFJFq+rEMvF1YICWikbfspsVTdybXVpNB7YpNyf8@public.gmane.org>
2015-01-29 19:45 ` Neil Horman
[not found] ` <20150129194539.GG1999-B26myB8xz7F8NnZeBjwnZQMhkBWG/bsMQH7oEaQurus@public.gmane.org>
2015-01-30 13:39 ` Gonzalez Monroy, Sergio
[not found] ` <91383E96CE459D47BCE92EFBF5CE73B004F453D7-kPTMFJFq+rEMvF1YICWikbfspsVTdybXVpNB7YpNyf8@public.gmane.org>
2015-01-30 14:05 ` Neil Horman
[not found] ` <20150130140507.GA2664-B26myB8xz7F8NnZeBjwnZQMhkBWG/bsMQH7oEaQurus@public.gmane.org>
2015-01-30 17:38 ` Gonzalez Monroy, Sergio
[not found] ` <91383E96CE459D47BCE92EFBF5CE73B004F45534-kPTMFJFq+rEMvF1YICWikbfspsVTdybXVpNB7YpNyf8@public.gmane.org>
2015-01-30 18:12 ` Neil Horman
[not found] ` <20150130181249.GC2664-B26myB8xz7F8NnZeBjwnZQMhkBWG/bsMQH7oEaQurus@public.gmane.org>
2015-02-11 11:11 ` Gonzalez Monroy, Sergio
[not found] ` <91383E96CE459D47BCE92EFBF5CE73B004F4AB9B-kPTMFJFq+rEMvF1YICWikbfspsVTdybXVpNB7YpNyf8@public.gmane.org>
2015-02-12 5:41 ` Neil Horman
[not found] ` <20150212054105.GC5504-0o1r3XBGOEbbgkc5XkKeNuvMHUBZFtU3YPYVAmT7z5s@public.gmane.org>
2015-02-12 9:17 ` Gonzalez Monroy, Sergio
[not found] ` <54DC6FB3.8020608-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org>
2015-02-12 12:16 ` Neil Horman
2015-02-12 9:22 ` Panu Matilainen [this message]
[not found] ` <54DC70F3.4020902-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2015-02-12 10:03 ` Gonzalez Monroy, Sergio
[not found] ` <54DC7A87.1090208-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org>
2015-02-12 12:23 ` Neil Horman
[not found] ` <20150212122354.GB8729-0o1r3XBGOEbbgkc5XkKeNuvMHUBZFtU3YPYVAmT7z5s@public.gmane.org>
2015-02-12 14:07 ` Panu Matilainen
[not found] ` <54DCB3B6.1010204-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2015-02-12 15:52 ` Neil Horman
[not found] ` <20150212155225.GB4634-0o1r3XBGOEbbgkc5XkKeNuvMHUBZFtU3YPYVAmT7z5s@public.gmane.org>
2015-02-13 10:14 ` Panu Matilainen
[not found] ` <54DDCE68.7090400-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2015-02-13 11:08 ` Gonzalez Monroy, Sergio
[not found] ` <54DDDB12.3090100-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org>
2015-02-13 12:51 ` Neil Horman
[not found] ` <20150213125142.GA11979-0o1r3XBGOEbbgkc5XkKeNuvMHUBZFtU3YPYVAmT7z5s@public.gmane.org>
2015-02-20 14:31 ` Gonzalez Monroy, Sergio
[not found] ` <54E74548.7010805-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org>
2015-02-22 23:37 ` Neil Horman
[not found] ` <20150222233740.GB31293-0o1r3XBGOEbbgkc5XkKeNuvMHUBZFtU3YPYVAmT7z5s@public.gmane.org>
2015-02-23 10:25 ` Gonzalez Monroy, Sergio
[not found] ` <54EAFFFD.5000200-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org>
2015-02-23 13:52 ` Neil Horman
[not found] ` <20150223135205.GA19230-B26myB8xz7F8NnZeBjwnZQMhkBWG/bsMQH7oEaQurus@public.gmane.org>
2015-02-23 14:58 ` Gonzalez Monroy, Sergio
[not found] ` <54EB4016.1040204-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org>
2015-02-23 18:23 ` Neil Horman
[not found] ` <20150223182319.GC19230-B26myB8xz7F8NnZeBjwnZQMhkBWG/bsMQH7oEaQurus@public.gmane.org>
2015-02-24 13:24 ` Gonzalez Monroy, Sergio
2015-03-12 16:27 ` [PATCH v2 0/4] " Sergio Gonzalez Monroy
[not found] ` <1426177681-16931-1-git-send-email-sergio.gonzalez.monroy-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org>
2015-03-12 16:27 ` [PATCH v2 1/4] mk: Remove combined library and related options Sergio Gonzalez Monroy
[not found] ` <1426177681-16931-2-git-send-email-sergio.gonzalez.monroy-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org>
2015-03-13 10:49 ` Kavanagh, Mark B
[not found] ` <DC5AD7FA266D86499789B1BCAEC715F846D52C87-pww93C2UFcwu0RiL9chJVbfspsVTdybXVpNB7YpNyf8@public.gmane.org>
2015-03-13 11:19 ` Gonzalez Monroy, Sergio
[not found] ` <5502C7D9.2060503-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org>
2015-03-13 11:34 ` Kavanagh, Mark B
[not found] ` <DC5AD7FA266D86499789B1BCAEC715F846D52D13-pww93C2UFcwu0RiL9chJVbfspsVTdybXVpNB7YpNyf8@public.gmane.org>
2015-03-13 11:48 ` Gonzalez Monroy, Sergio
[not found] ` <5502CEAB.8060801-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org>
2015-03-13 13:16 ` Kavanagh, Mark B
[not found] ` <DC5AD7FA266D86499789B1BCAEC715F846D52DDA-pww93C2UFcwu0RiL9chJVbfspsVTdybXVpNB7YpNyf8@public.gmane.org>
2015-03-13 14:11 ` Gonzalez Monroy, Sergio
2015-03-13 13:17 ` Neil Horman
[not found] ` <20150313131719.GA28191-B26myB8xz7F8NnZeBjwnZQMhkBWG/bsMQH7oEaQurus@public.gmane.org>
2015-03-13 14:12 ` Stefan Puiu
[not found] ` <CACKs7VAOZ-e6=jC_kUJC0eO5wfj5r3uaPOR3QGyHpzxC_vLttA-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2015-03-13 15:18 ` Neil Horman
[not found] ` <20150313151855.GG28191-B26myB8xz7F8NnZeBjwnZQMhkBWG/bsMQH7oEaQurus@public.gmane.org>
2015-03-13 15:28 ` Gonzalez Monroy, Sergio
[not found] ` <55030200.4070505-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org>
2015-03-13 16:16 ` Neil Horman
2015-03-13 16:07 ` Stephen Hemminger
2015-03-13 16:32 ` Neil Horman
2015-03-13 16:38 ` Gonzalez Monroy, Sergio
2015-03-18 12:11 ` Gonzalez Monroy, Sergio
[not found] ` <55096B86.7040303-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org>
2015-03-18 12:59 ` Thomas Monjalon
2015-03-18 15:30 ` Stefan Puiu
[not found] ` <CACKs7VBNmmdPoBcv-vPpn-HVQr2Nd2Gr_2shTuqdh2L1MsfY_Q-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2015-03-18 15:52 ` Gonzalez Monroy, Sergio
2015-03-18 16:48 ` Neil Horman
2015-03-26 8:52 ` Gonzalez Monroy, Sergio
[not found] ` <5513C8CD.80408-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org>
2015-03-26 10:30 ` Neil Horman
2015-03-18 16:41 ` Neil Horman
2015-03-12 16:27 ` [PATCH v2 2/4] lib: Set LDLIBS for each library Sergio Gonzalez Monroy
2015-03-12 16:28 ` [PATCH v2 3/4] mk: Use LDLIBS when linking shared libraries Sergio Gonzalez Monroy
2015-03-12 16:28 ` [PATCH v2 4/4] mk: update LDLIBS for app building Sergio Gonzalez Monroy
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=54DC70F3.4020902@redhat.com \
--to=pmatilai-h+wxahxf7alqt0dzr+alfa@public.gmane.org \
--cc=dev-VfR2kkLFssw@public.gmane.org \
--cc=nhorman-2XuSBdqkA4R54TAoqtyWWQ@public.gmane.org \
--cc=sergio.gonzalez.monroy-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.