[OE-core] [PATCH V2] tclibc-musl.inc: fix bfd "cannot make copy relocation for protected symbol" issues

Ming Liu liu.ming50 at gmail.com
Tue Aug 1 02:28:20 UTC 2017


Hi, Khem:

Just tried, but the error still could be observed with the patch
applied, for instance:

| /home/peter-liu/opensource/poky-upstream/build/tmp/work/cortexa8hf-neon-poky-linux-musleabi/m4/1.4.18-r0/recipe-sysroot-native/usr/bin/arm-poky-linux-musleabi/../../libexec/arm-poky-linux-musleabi/gcc/arm-poky-linux-musleabi/7.1.0/ld:
error: ../lib/libm4.a(progname.o): cannot make copy relocation for
protected symbol 'program_invocation_name', defined in
/home/peter-liu/opensource/poky-upstream/build/tmp/work/cortexa8hf-neon-poky-linux-musleabi/m4/1.4.18-r0/recipe-sysroot/usr/lib/libc.so
| collect2: error: ld returned 1 exit status
| Makefile:1554: recipe for target 'm4' failed

//Ming Liu


2017-07-31 23:56 GMT+02:00 Khem Raj <raj.khem at gmail.com>:

> On Tue, Jul 25, 2017 at 1:07 AM, Ming Liu <liu.ming50 at gmail.com> wrote:
> > Hi, Burton:
> >
> > I also agree with you, your suggestion is better.
> >
> > Hi, Khem:
> >
> > But is this a bug of binutils? Or musl libc? Since I had only observed
> this
> > error with musl libc only, it did not occur with glibc.
> >
>
> Please try out a tentative patch here
> https://bugzilla.yoctoproject.org/show_bug.cgi?id=11679#c4
>
> > //Ming Liu
> >
> > 2017-07-24 15:39 GMT+02:00 Khem Raj <raj.khem at gmail.com>:
> >>
> >> On Mon, Jul 24, 2017 at 6:18 AM, Burton, Ross <ross.burton at intel.com>
> >> wrote:
> >> > If we're going to silently change the linker to bfd under musl if
> >> > ld-is-gold
> >> > is selected, wouldn't it be better just to throw an exception if both
> >> > musl
> >> > and ld-is-gold are selected?  Better to tell the user so they can not
> do
> >> > that than silently ignore what they asked.
> >>
> >> yes, that would be better but I am skeptical of disabling it
> >> completely, we should
> >> create testcase and report it to binutils bugzilla
> >>
> >>
> >> >
> >> > Ross
> >> >
> >> > On 22 July 2017 at 14:30, <liu.ming50 at gmail.com> wrote:
> >> >>
> >> >> From: Ming Liu <peter.x.liu at external.atlascopco.com>
> >> >>
> >> >> Quite a few such compiling issues were found when I was building with
> >> >> following configs:
> >> >> ...
> >> >> MACHINE = "beaglebone"
> >> >> TCLIBC = "musl"
> >> >> DISTRO_FEATURES_append = " ld-is-gold"
> >> >> ...
> >> >>
> >> >> fixed by adding bfd binding now ldflags.
> >> >>
> >> >> Signed-off-by: Ming Liu <peter.x.liu at external.atlascopco.com>
> >> >> ---
> >> >>  meta/conf/distro/include/tclibc-musl.inc | 4 ++++
> >> >>  1 file changed, 4 insertions(+)
> >> >>
> >> >> diff --git a/meta/conf/distro/include/tclibc-musl.inc
> >> >> b/meta/conf/distro/include/tclibc-musl.inc
> >> >> index 3d3f6ac..99d52a1 100644
> >> >> --- a/meta/conf/distro/include/tclibc-musl.inc
> >> >> +++ b/meta/conf/distro/include/tclibc-musl.inc
> >> >> @@ -18,6 +18,10 @@ PREFERRED_PROVIDER_virtual/nativesdk-libiconv ?=
> >> >> "nativesdk-glibc"
> >> >>
> >> >>  CXXFLAGS += "-fvisibility-inlines-hidden"
> >> >>
> >> >> +# Workaround for musl libc does not support bfd lazy binding well
> >> >> +# Refer to: https://bugzilla.yoctoproject.org/show_bug.cgi?id=11679
> >> >> +LDFLAGS += "${@bb.utils.contains('DISTRO_FEATURES', 'ld-is-gold',
> >> >> '-Wl,-z,relro,-z,now -fuse-ld=bfd', '', d)}"
> >> >> +
> >> >>  IMAGE_LINGUAS = ""
> >> >>
> >> >>  LIBC_DEPENDENCIES = "\
> >> >> --
> >> >> 2.7.4
> >> >>
> >> >
> >> >
> >> > --
> >> > _______________________________________________
> >> > Openembedded-core mailing list
> >> > Openembedded-core at lists.openembedded.org
> >> > http://lists.openembedded.org/mailman/listinfo/openembedded-core
> >> >
> >
> >
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openembedded.org/pipermail/openembedded-core/attachments/20170801/d7406568/attachment-0002.html>


More information about the Openembedded-core mailing list