On Thu, Aug 29, 2019 at 6:02 PM Luca Boccassi <bl...@debian.org> wrote: > > On Thu, 2019-08-29 at 16:34 +0100, Bruce Richardson wrote: > > On Thu, Aug 29, 2019 at 05:30:03PM +0200, Christian Ehrhardt wrote: > > > A while ago telemetry was added in 57ae0ec6 and it also added as- > > > needed > > > to config/meson.build. This seems no more needed these days as due > > > to other > > > build changes the ordering in buildlogs is: > > > [...] -lrte_telemetry [...] -Wl,--no-as-needed [...] > > > Which means telemetry no more benefits from --no-as-needed anyway. > > > > > > Overlinking problems get triggered by the meson generated pkgconfig > > > which > > > will have: > > > [...] -Wl,--no-as-needed <somelibsusedbydpdk> > > > This will overlink <somelibs> and in addition anything that follows > > > as it also doesn't wrap back to --as-needed. So if a projects > > > includes > > > dpdk libs + <other> it will also consider <other> with --no-as- > > > needed. > > > > > > Fixes: > > > https://bugs.launchpad.net/ubuntu/+source/dpdk/+bug/1841759 > > > > > > > > > Signed-off-by: Christian Ehrhardt < > > > christian.ehrha...@canonical.com > > > > > > > Acked-by: Luca Boccassi < > > > bl...@debian.org > > > > > > > --- > > > config/meson.build | 1 - > > > 1 file changed, 1 deletion(-) > > > > > > diff --git a/config/meson.build b/config/meson.build > > > index 2bafea530..a27f731f8 100644 > > > --- a/config/meson.build > > > +++ b/config/meson.build > > > @@ -94,7 +94,6 @@ dpdk_conf.set('RTE_TOOLCHAIN_' + > > > toolchain.to_upper(), 1) > > > dpdk_conf.set('RTE_ARCH_64', cc.sizeof('void *') == 8) > > > > > > add_project_link_arguments('-Wl,--no-as-needed', language: 'c') > > > -dpdk_extra_ldflags += '-Wl,--no-as-needed' > > > > > > > This seems strange to me. What is it about linking the dpdk apps that > > require the argument, but makes it safe for non-builtin apps to avoid > > having the arg? > > We've been wondering about that for a while :-) It also seems to be not > reproducible on Ubuntu 18.04/gcc 7.4. > > Can the verbose linking log be shared here, so that we can have a look > at where no-as-needed lands? Might provide some clue
That would be the verbose linking log of the Travis CI run right? I currently have no idea which knob to turn to get this :-/ Having it accepted in upstream would make it more easy to fix this in the soon to be released Ubuntu 19.10. Is there a path to consider taking this fix as-is and continue the debug/discussion how the removal of the second line can even cause the symptoms that we have seen later? Or is everyone afraid that we then will not continue on it at all? > -- > Kind regards, > Luca Boccassi -- Christian Ehrhardt Software Engineer, Ubuntu Server Canonical Ltd