From: Thomas Monjalon <thomas.monjalon@6wind.com>
To: Sergio Gonzalez Monroy <sergio.gonzalez.monroy@intel.com>
Cc: dev@dpdk.org
Subject: Re: [dpdk-dev] [PATCH] mk: fix acl library static linking
Date: Thu, 30 Jun 2016 17:28:27 +0200 [thread overview]
Message-ID: <1797205.YMNToqyLHv@xps13> (raw)
In-Reply-To: <2994f200-70c4-3fe2-5976-fc1799271430@intel.com>
2016-06-30 15:02, Sergio Gonzalez Monroy:
> On 30/06/2016 13:44, Thomas Monjalon wrote:
> > 2016-06-30 13:04, Sergio Gonzalez Monroy:
> >> On 30/06/2016 12:38, Thomas Monjalon wrote:
> >>> Does it need to be commented in rte.app.mk?
> >>> The other libs are in whole-archive to support dlopen of drivers.
> >>> But the problem here is not because of a driver use.
> >> There seem to be a bunch of libraries under --whole-archive scope that
> >> are not
> >> PMDs, ie. cfgfile, cmdline...
> >>
> >> What is the criteria?
> > The criteria is a bit vague. We must try to include only libs which can
> > be used by a driver.
> > cmdline should probably not be there.
> > Does it make sense to use cfgfile in a driver? maybe yes.
>
> So as it is, ACL autotest is broken when building static libs
> (non-combined).
I think the --whole-archive option must be set specifically for ACL
with a comment explaining it is required because of weak functions:
# librte_acl needs --whole-archive because of weak functions
_LDLIBS-$(CONFIG_RTE_LIBRTE_ACL) += --whole-archive -lrte_acl --no-whole-archive
> For combined libs we usually wrap libdpdk.a with --whole-archive, thus it is
> not an issue.
>
> Just thinking a bit more about the 'dlopen of drivers' case you
> mentioned before,
> shouldn't the driver have proper dependencies and therefore need shared
> DPDK libraries?
It is possible to build a .so, without any DT_NEEDED entries, which will
find the required symbols in the static linked binary.
> What does happen if binary/app and driver are built against different
> library versions?
Bad things :)
> Where does it say that we do support this use case?
It is maybe not written. But I know it is used by people wanting to load
some PMD.so on demand while having the rest statically compiled.
I agree it needs to be documented and probably better managed and tested.
next prev parent reply other threads:[~2016-06-30 15:36 UTC|newest]
Thread overview: 22+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-06-30 11:10 Sergio Gonzalez Monroy
2016-06-30 11:38 ` Thomas Monjalon
2016-06-30 12:04 ` Sergio Gonzalez Monroy
2016-06-30 12:44 ` Thomas Monjalon
2016-06-30 14:02 ` Sergio Gonzalez Monroy
2016-06-30 15:24 ` Ananyev, Konstantin
2016-06-30 15:47 ` Thomas Monjalon
2016-06-30 15:28 ` Thomas Monjalon [this message]
2016-06-30 15:58 ` Sergio Gonzalez Monroy
2016-06-30 12:14 ` Ananyev, Konstantin
2016-06-30 16:01 ` [dpdk-dev] [PATCH v2] " Sergio Gonzalez Monroy
2016-06-30 16:10 ` Thomas Monjalon
2016-06-30 16:14 ` Sergio Gonzalez Monroy
2016-06-30 16:22 ` Thomas Monjalon
2016-07-01 8:05 ` Sergio Gonzalez Monroy
2016-07-01 10:05 ` Thomas Monjalon
2016-07-01 10:27 ` Sergio Gonzalez Monroy
2016-07-01 10:39 ` Thomas Monjalon
2016-06-30 16:11 ` [dpdk-dev] [PATCH v3] " Sergio Gonzalez Monroy
2016-07-01 14:38 ` [dpdk-dev] [PATCH v4 1/2] mk: allow duplicate linker flags in libraries list Sergio Gonzalez Monroy
2016-07-01 14:38 ` [dpdk-dev] [PATCH v4 2/2] mk: fix acl library static linking Sergio Gonzalez Monroy
2016-07-01 14:45 ` Thomas Monjalon
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=1797205.YMNToqyLHv@xps13 \
--to=thomas.monjalon@6wind.com \
--cc=dev@dpdk.org \
--cc=sergio.gonzalez.monroy@intel.com \
/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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).