Re: [OE-core] [PATCH V2] tclibc-musl.inc: fix bfd "cannot make copy relocation for protected symbol" issues
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: > On Tue, Jul 25, 2017 at 1:07 AM, Ming Liu 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 : > >> > >> On Mon, Jul 24, 2017 at 6:18 AM, Burton, Ross > >> 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, wrote: > >> >> > >> >> From: Ming Liu > >> >> > >> >> 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 > >> >> --- > >> >> 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@lists.openembedded.org > >> > http://lists.openembedded.org/mailman/listinfo/openembedded-core > >> > > > > > > -- ___ Openembedded-core mailing list Openembedded-core@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-core
Re: [OE-core] [PATCH V2] tclibc-musl.inc: fix bfd "cannot make copy relocation for protected symbol" issues
On Tue, Jul 25, 2017 at 1:07 AM, Ming Liuwrote: > 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 : >> >> On Mon, Jul 24, 2017 at 6:18 AM, Burton, Ross >> 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, wrote: >> >> >> >> From: Ming Liu >> >> >> >> 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 >> >> --- >> >> 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@lists.openembedded.org >> > http://lists.openembedded.org/mailman/listinfo/openembedded-core >> > > > -- ___ Openembedded-core mailing list Openembedded-core@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-core
Re: [OE-core] [PATCH V2] tclibc-musl.inc: fix bfd "cannot make copy relocation for protected symbol" issues
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. //Ming Liu 2017-07-24 15:39 GMT+02:00 Khem Raj: > On Mon, Jul 24, 2017 at 6:18 AM, Burton, Ross > 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, wrote: > >> > >> From: Ming Liu > >> > >> 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 > >> --- > >> 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@lists.openembedded.org > > http://lists.openembedded.org/mailman/listinfo/openembedded-core > > > -- ___ Openembedded-core mailing list Openembedded-core@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-core
Re: [OE-core] [PATCH V2] tclibc-musl.inc: fix bfd "cannot make copy relocation for protected symbol" issues
On Mon, Jul 24, 2017 at 6:18 AM, Burton, Rosswrote: > 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, wrote: >> >> From: Ming Liu >> >> 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 >> --- >> 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@lists.openembedded.org > http://lists.openembedded.org/mailman/listinfo/openembedded-core > -- ___ Openembedded-core mailing list Openembedded-core@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-core
Re: [OE-core] [PATCH V2] tclibc-musl.inc: fix bfd "cannot make copy relocation for protected symbol" issues
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. Ross On 22 July 2017 at 14:30,wrote: > From: Ming Liu > > 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 > --- > 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@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-core
[OE-core] [PATCH V2] tclibc-musl.inc: fix bfd "cannot make copy relocation for protected symbol" issues
From: Ming LiuQuite 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 --- 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@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-core