* [Buildroot] [PATCH 1/2] package/gmpc: needs -lm @ 2019-10-29 21:40 Fabrice Fontaine 2019-10-29 21:40 ` [Buildroot] [PATCH 2/2] package/gmpc: fix build with NLS Fabrice Fontaine 2019-11-08 21:04 ` [Buildroot] [PATCH 1/2] package/gmpc: needs -lm Thomas Petazzoni 0 siblings, 2 replies; 15+ messages in thread From: Fabrice Fontaine @ 2019-10-29 21:40 UTC (permalink / raw) To: buildroot gmpc forgets to link with -lm: /home/buildroot/autobuild/instance-2/output-1/host/opt/ext-toolchain/bin/../lib/gcc/mips-linux-gnu/5.3.0/../../../../mips-linux-gnu/bin/ld: GmpcVolume.o: undefined reference to symbol 'ceil@@GLIBC_2.0' /home/buildroot/autobuild/instance-2/output-1/host/mips64el-buildroot-linux-gnu/sysroot/soft-float/el/lib64/libm.so.6: error adding symbols: DSO missing from command line Fixes: - http://autobuild.buildroot.org/results/a79e0487135ad90530595d5c6ecc32f9c8cea7c4 Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com> --- package/gmpc/gmpc.mk | 1 + 1 file changed, 1 insertion(+) diff --git a/package/gmpc/gmpc.mk b/package/gmpc/gmpc.mk index 40b77eb189..51646ac470 100644 --- a/package/gmpc/gmpc.mk +++ b/package/gmpc/gmpc.mk @@ -14,5 +14,6 @@ GMPC_DEPENDENCIES = host-gob2 host-intltool host-pkgconf host-vala \ libglib2 libgtk2 libmpd libsoup sqlite \ xlib_libICE xlib_libSM xlib_libX11 \ $(TARGET_NLS_DEPENDENCIES) +GMPC_CONF_ENV = LIBS=-lm $(eval $(autotools-package)) -- 2.23.0 ^ permalink raw reply related [flat|nested] 15+ messages in thread
* [Buildroot] [PATCH 2/2] package/gmpc: fix build with NLS 2019-10-29 21:40 [Buildroot] [PATCH 1/2] package/gmpc: needs -lm Fabrice Fontaine @ 2019-10-29 21:40 ` Fabrice Fontaine 2019-11-08 21:04 ` [Buildroot] [PATCH 1/2] package/gmpc: needs -lm Thomas Petazzoni 1 sibling, 0 replies; 15+ messages in thread From: Fabrice Fontaine @ 2019-10-29 21:40 UTC (permalink / raw) To: buildroot Fixes: - http://autobuild.buildroot.net/results/3de60bd9a9f8f2ad94a7d12e03263cdaea918251 Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com> --- package/gmpc/gmpc.mk | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package/gmpc/gmpc.mk b/package/gmpc/gmpc.mk index 51646ac470..ece876473b 100644 --- a/package/gmpc/gmpc.mk +++ b/package/gmpc/gmpc.mk @@ -14,6 +14,6 @@ GMPC_DEPENDENCIES = host-gob2 host-intltool host-pkgconf host-vala \ libglib2 libgtk2 libmpd libsoup sqlite \ xlib_libICE xlib_libSM xlib_libX11 \ $(TARGET_NLS_DEPENDENCIES) -GMPC_CONF_ENV = LIBS=-lm +GMPC_CONF_ENV = LIBS="-lm $(TARGET_NLS_LIBS)" $(eval $(autotools-package)) -- 2.23.0 ^ permalink raw reply related [flat|nested] 15+ messages in thread
* [Buildroot] [PATCH 1/2] package/gmpc: needs -lm 2019-10-29 21:40 [Buildroot] [PATCH 1/2] package/gmpc: needs -lm Fabrice Fontaine 2019-10-29 21:40 ` [Buildroot] [PATCH 2/2] package/gmpc: fix build with NLS Fabrice Fontaine @ 2019-11-08 21:04 ` Thomas Petazzoni 2019-11-08 21:28 ` Peter Seiderer 1 sibling, 1 reply; 15+ messages in thread From: Thomas Petazzoni @ 2019-11-08 21:04 UTC (permalink / raw) To: buildroot On Tue, 29 Oct 2019 22:40:45 +0100 Fabrice Fontaine <fontaine.fabrice@gmail.com> wrote: > gmpc forgets to link with -lm: > > /home/buildroot/autobuild/instance-2/output-1/host/opt/ext-toolchain/bin/../lib/gcc/mips-linux-gnu/5.3.0/../../../../mips-linux-gnu/bin/ld: GmpcVolume.o: undefined reference to symbol 'ceil@@GLIBC_2.0' > /home/buildroot/autobuild/instance-2/output-1/host/mips64el-buildroot-linux-gnu/sysroot/soft-float/el/lib64/libm.so.6: error adding symbols: DSO missing from command line > > Fixes: > - http://autobuild.buildroot.org/results/a79e0487135ad90530595d5c6ecc32f9c8cea7c4 > > Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com> We need to understand why this is happening now. This package has not been modified since July 2017, but suddenly, on October 21, 2019, it started failing like this. Why? Was there a change in one of the dependencies, that is no longer linked with libm, and that causes this problem ? I think I already asked this in the past: when you fix an issue, don't just fix the issue, but explain why the issue is happening, especially in situations like these. Thanks! Thomas -- Thomas Petazzoni, CTO, Bootlin Embedded Linux and Kernel engineering https://bootlin.com ^ permalink raw reply [flat|nested] 15+ messages in thread
* [Buildroot] [PATCH 1/2] package/gmpc: needs -lm 2019-11-08 21:04 ` [Buildroot] [PATCH 1/2] package/gmpc: needs -lm Thomas Petazzoni @ 2019-11-08 21:28 ` Peter Seiderer 2019-11-17 19:45 ` Arnout Vandecappelle 0 siblings, 1 reply; 15+ messages in thread From: Peter Seiderer @ 2019-11-08 21:28 UTC (permalink / raw) To: buildroot Hello Fabrice, Thomas, On Fri, 8 Nov 2019 22:04:42 +0100, Thomas Petazzoni <thomas.petazzoni@bootlin.com> wrote: > On Tue, 29 Oct 2019 22:40:45 +0100 > Fabrice Fontaine <fontaine.fabrice@gmail.com> wrote: > > > gmpc forgets to link with -lm: > > > > /home/buildroot/autobuild/instance-2/output-1/host/opt/ext-toolchain/bin/../lib/gcc/mips-linux-gnu/5.3.0/../../../../mips-linux-gnu/bin/ld: GmpcVolume.o: undefined reference to symbol 'ceil@@GLIBC_2.0' > > /home/buildroot/autobuild/instance-2/output-1/host/mips64el-buildroot-linux-gnu/sysroot/soft-float/el/lib64/libm.so.6: error adding symbols: DSO missing from command line > > > > Fixes: > > - http://autobuild.buildroot.org/results/a79e0487135ad90530595d5c6ecc32f9c8cea7c4 > > > > Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com> > > We need to understand why this is happening now. This package has not > been modified since July 2017, but suddenly, on October 21, 2019, it > started failing like this. Why? Was there a change in one of the > dependencies, that is no longer linked with libm, and that causes this > problem ? Maybe the same cause/problem as in the libv4l case regarding libatomic, evaluating vs. not evaluationg the *.la files (see [1])? Regards, Peter [1] http://lists.busybox.net/pipermail/buildroot/2019-October/264928.html > > I think I already asked this in the past: when you fix an issue, don't > just fix the issue, but explain why the issue is happening, especially > in situations like these. > > Thanks! > > Thomas ^ permalink raw reply [flat|nested] 15+ messages in thread
* [Buildroot] [PATCH 1/2] package/gmpc: needs -lm 2019-11-08 21:28 ` Peter Seiderer @ 2019-11-17 19:45 ` Arnout Vandecappelle 2019-11-17 20:20 ` Peter Seiderer 0 siblings, 1 reply; 15+ messages in thread From: Arnout Vandecappelle @ 2019-11-17 19:45 UTC (permalink / raw) To: buildroot On 08/11/2019 22:28, Peter Seiderer wrote: > Hello Fabrice, Thomas, > > On Fri, 8 Nov 2019 22:04:42 +0100, Thomas Petazzoni <thomas.petazzoni@bootlin.com> wrote: > >> On Tue, 29 Oct 2019 22:40:45 +0100 >> Fabrice Fontaine <fontaine.fabrice@gmail.com> wrote: >> >>> gmpc forgets to link with -lm: >>> >>> /home/buildroot/autobuild/instance-2/output-1/host/opt/ext-toolchain/bin/../lib/gcc/mips-linux-gnu/5.3.0/../../../../mips-linux-gnu/bin/ld: GmpcVolume.o: undefined reference to symbol 'ceil@@GLIBC_2.0' >>> /home/buildroot/autobuild/instance-2/output-1/host/mips64el-buildroot-linux-gnu/sysroot/soft-float/el/lib64/libm.so.6: error adding symbols: DSO missing from command line >>> >>> Fixes: >>> - http://autobuild.buildroot.org/results/a79e0487135ad90530595d5c6ecc32f9c8cea7c4 >>> >>> Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com> >> >> We need to understand why this is happening now. This package has not >> been modified since July 2017, but suddenly, on October 21, 2019, it >> started failing like this. Why? Was there a change in one of the >> dependencies, that is no longer linked with libm, and that causes this >> problem ? It started because of RELRO, I think. > > Maybe the same cause/problem as in the libv4l case regarding libatomic, > evaluating vs. not evaluationg the *.la files (see [1])? And this one because of PIC_PIE. Regards, Arnout > > Regards, > Peter > > [1] http://lists.busybox.net/pipermail/buildroot/2019-October/264928.html > >> >> I think I already asked this in the past: when you fix an issue, don't >> just fix the issue, but explain why the issue is happening, especially >> in situations like these. >> >> Thanks! >> >> Thomas > > _______________________________________________ > buildroot mailing list > buildroot at busybox.net > http://lists.busybox.net/mailman/listinfo/buildroot > ^ permalink raw reply [flat|nested] 15+ messages in thread
* [Buildroot] [PATCH 1/2] package/gmpc: needs -lm 2019-11-17 19:45 ` Arnout Vandecappelle @ 2019-11-17 20:20 ` Peter Seiderer 2019-11-17 20:48 ` Peter Seiderer 0 siblings, 1 reply; 15+ messages in thread From: Peter Seiderer @ 2019-11-17 20:20 UTC (permalink / raw) To: buildroot Hello Arnout, On Sun, 17 Nov 2019 20:45:19 +0100, Arnout Vandecappelle <arnout@mind.be> wrote: > On 08/11/2019 22:28, Peter Seiderer wrote: > > Hello Fabrice, Thomas, > > > > On Fri, 8 Nov 2019 22:04:42 +0100, Thomas Petazzoni <thomas.petazzoni@bootlin.com> wrote: > > > >> On Tue, 29 Oct 2019 22:40:45 +0100 > >> Fabrice Fontaine <fontaine.fabrice@gmail.com> wrote: > >> > >>> gmpc forgets to link with -lm: > >>> > >>> /home/buildroot/autobuild/instance-2/output-1/host/opt/ext-toolchain/bin/../lib/gcc/mips-linux-gnu/5.3.0/../../../../mips-linux-gnu/bin/ld: GmpcVolume.o: undefined reference to symbol 'ceil@@GLIBC_2.0' > >>> /home/buildroot/autobuild/instance-2/output-1/host/mips64el-buildroot-linux-gnu/sysroot/soft-float/el/lib64/libm.so.6: error adding symbols: DSO missing from command line > >>> > >>> Fixes: > >>> - http://autobuild.buildroot.org/results/a79e0487135ad90530595d5c6ecc32f9c8cea7c4 > >>> > >>> Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com> > >> > >> We need to understand why this is happening now. This package has not > >> been modified since July 2017, but suddenly, on October 21, 2019, it > >> started failing like this. Why? Was there a change in one of the > >> dependencies, that is no longer linked with libm, and that causes this > >> problem ? > > It started because of RELRO, I think. > > > > > Maybe the same cause/problem as in the libv4l case regarding libatomic, > > evaluating vs. not evaluationg the *.la files (see [1])? > > And this one because of PIC_PIE. Any hints to one/more related commits (so I can check by reverting if it changes/fix the problems)? Are the RELRO/PIC_PIE options related to evaluating *.la files? Regards, Peter > > Regards, > Arnout > > > > > Regards, > > Peter > > > > [1] http://lists.busybox.net/pipermail/buildroot/2019-October/264928.html > > > >> > >> I think I already asked this in the past: when you fix an issue, don't > >> just fix the issue, but explain why the issue is happening, especially > >> in situations like these. > >> > >> Thanks! > >> > >> Thomas > > > > _______________________________________________ > > buildroot mailing list > > buildroot at busybox.net > > http://lists.busybox.net/mailman/listinfo/buildroot > > > _______________________________________________ > buildroot mailing list > buildroot at busybox.net > http://lists.busybox.net/mailman/listinfo/buildroot ^ permalink raw reply [flat|nested] 15+ messages in thread
* [Buildroot] [PATCH 1/2] package/gmpc: needs -lm 2019-11-17 20:20 ` Peter Seiderer @ 2019-11-17 20:48 ` Peter Seiderer 2019-11-17 20:54 ` Arnout Vandecappelle 0 siblings, 1 reply; 15+ messages in thread From: Peter Seiderer @ 2019-11-17 20:48 UTC (permalink / raw) To: buildroot Hello *, On Sun, 17 Nov 2019 21:20:01 +0100, Peter Seiderer <ps.report@gmx.net> wrote: > Hello Arnout, > > On Sun, 17 Nov 2019 20:45:19 +0100, Arnout Vandecappelle <arnout@mind.be> wrote: > > > On 08/11/2019 22:28, Peter Seiderer wrote: > > > Hello Fabrice, Thomas, > > > > > > On Fri, 8 Nov 2019 22:04:42 +0100, Thomas Petazzoni <thomas.petazzoni@bootlin.com> wrote: > > > > > >> On Tue, 29 Oct 2019 22:40:45 +0100 > > >> Fabrice Fontaine <fontaine.fabrice@gmail.com> wrote: > > >> > > >>> gmpc forgets to link with -lm: > > >>> > > >>> /home/buildroot/autobuild/instance-2/output-1/host/opt/ext-toolchain/bin/../lib/gcc/mips-linux-gnu/5.3.0/../../../../mips-linux-gnu/bin/ld: GmpcVolume.o: undefined reference to symbol 'ceil@@GLIBC_2.0' > > >>> /home/buildroot/autobuild/instance-2/output-1/host/mips64el-buildroot-linux-gnu/sysroot/soft-float/el/lib64/libm.so.6: error adding symbols: DSO missing from command line > > >>> > > >>> Fixes: > > >>> - http://autobuild.buildroot.org/results/a79e0487135ad90530595d5c6ecc32f9c8cea7c4 > > >>> > > >>> Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com> > > >> > > >> We need to understand why this is happening now. This package has not > > >> been modified since July 2017, but suddenly, on October 21, 2019, it > > >> started failing like this. Why? Was there a change in one of the > > >> dependencies, that is no longer linked with libm, and that causes this > > >> problem ? > > > > It started because of RELRO, I think. > > > > > > > > Maybe the same cause/problem as in the libv4l case regarding libatomic, > > > evaluating vs. not evaluationg the *.la files (see [1])? > > > > And this one because of PIC_PIE. > > Any hints to one/more related commits (so I can check by reverting if it > changes/fix the problems)? > > Are the RELRO/PIC_PIE options related to evaluating *.la files? Did a quick search by the date (October 21, 2019) and the info from the libv4l case [1] and would suspect the commit 'pkgconf: Add pkgconf system lib and include path' [2], will do a test with this commit reverted.... Regards, Peter [2] https://git.buildroot.net/buildroot/commit/?id=9cc8680fe54c0b8f5008158e36e2157127f03a7e > > Regards, > Peter > > > > > Regards, > > Arnout > > > > > > > > Regards, > > > Peter > > > > > > [1] http://lists.busybox.net/pipermail/buildroot/2019-October/264928.html > > > > > >> > > >> I think I already asked this in the past: when you fix an issue, don't > > >> just fix the issue, but explain why the issue is happening, especially > > >> in situations like these. > > >> > > >> Thanks! > > >> > > >> Thomas > > > > > > _______________________________________________ > > > buildroot mailing list > > > buildroot at busybox.net > > > http://lists.busybox.net/mailman/listinfo/buildroot > > > > > _______________________________________________ > > buildroot mailing list > > buildroot at busybox.net > > http://lists.busybox.net/mailman/listinfo/buildroot > > _______________________________________________ > buildroot mailing list > buildroot at busybox.net > http://lists.busybox.net/mailman/listinfo/buildroot ^ permalink raw reply [flat|nested] 15+ messages in thread
* [Buildroot] [PATCH 1/2] package/gmpc: needs -lm 2019-11-17 20:48 ` Peter Seiderer @ 2019-11-17 20:54 ` Arnout Vandecappelle 2019-11-18 22:42 ` Peter Seiderer 0 siblings, 1 reply; 15+ messages in thread From: Arnout Vandecappelle @ 2019-11-17 20:54 UTC (permalink / raw) To: buildroot On 17/11/2019 21:48, Peter Seiderer wrote: > Hello *, > > On Sun, 17 Nov 2019 21:20:01 +0100, Peter Seiderer <ps.report@gmx.net> wrote: > >> Hello Arnout, >> >> On Sun, 17 Nov 2019 20:45:19 +0100, Arnout Vandecappelle <arnout@mind.be> wrote: >> >>> On 08/11/2019 22:28, Peter Seiderer wrote: >>>> Hello Fabrice, Thomas, >>>> >>>> On Fri, 8 Nov 2019 22:04:42 +0100, Thomas Petazzoni <thomas.petazzoni@bootlin.com> wrote: >>>> >>>>> On Tue, 29 Oct 2019 22:40:45 +0100 >>>>> Fabrice Fontaine <fontaine.fabrice@gmail.com> wrote: >>>>> >>>>>> gmpc forgets to link with -lm: >>>>>> >>>>>> /home/buildroot/autobuild/instance-2/output-1/host/opt/ext-toolchain/bin/../lib/gcc/mips-linux-gnu/5.3.0/../../../../mips-linux-gnu/bin/ld: GmpcVolume.o: undefined reference to symbol 'ceil@@GLIBC_2.0' >>>>>> /home/buildroot/autobuild/instance-2/output-1/host/mips64el-buildroot-linux-gnu/sysroot/soft-float/el/lib64/libm.so.6: error adding symbols: DSO missing from command line >>>>>> >>>>>> Fixes: >>>>>> - http://autobuild.buildroot.org/results/a79e0487135ad90530595d5c6ecc32f9c8cea7c4 >>>>>> >>>>>> Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com> >>>>> >>>>> We need to understand why this is happening now. This package has not >>>>> been modified since July 2017, but suddenly, on October 21, 2019, it >>>>> started failing like this. Why? Was there a change in one of the >>>>> dependencies, that is no longer linked with libm, and that causes this >>>>> problem ? >>> >>> It started because of RELRO, I think. >>> >>>> >>>> Maybe the same cause/problem as in the libv4l case regarding libatomic, >>>> evaluating vs. not evaluationg the *.la files (see [1])? >>> >>> And this one because of PIC_PIE. >> >> Any hints to one/more related commits (so I can check by reverting if it >> changes/fix the problems)? >> >> Are the RELRO/PIC_PIE options related to evaluating *.la files? > > Did a quick search by the date (October 21, 2019) and the info from the libv4l > case [1] and would suspect the commit 'pkgconf: Add pkgconf system lib and > include path' [2], will do a test with this commit reverted.... Good point. Also there's a failure without PIC_PIE or RELRO [3]. Regards, Arnout > > Regards, > Peter > > [2] https://git.buildroot.net/buildroot/commit/?id=9cc8680fe54c0b8f5008158e36e2157127f03a7e [3] http://autobuild.buildroot.net/results/e7f/e7f37080c20e2131613517c3007b4569c28dbcf2 > >> >> Regards, >> Peter >> >>> >>> Regards, >>> Arnout >>> >>>> >>>> Regards, >>>> Peter >>>> >>>> [1] http://lists.busybox.net/pipermail/buildroot/2019-October/264928.html >>>> >>>>> >>>>> I think I already asked this in the past: when you fix an issue, don't >>>>> just fix the issue, but explain why the issue is happening, especially >>>>> in situations like these. >>>>> >>>>> Thanks! >>>>> >>>>> Thomas >>>> >>>> _______________________________________________ >>>> buildroot mailing list >>>> buildroot at busybox.net >>>> http://lists.busybox.net/mailman/listinfo/buildroot >>>> >>> _______________________________________________ >>> buildroot mailing list >>> buildroot at busybox.net >>> http://lists.busybox.net/mailman/listinfo/buildroot >> >> _______________________________________________ >> buildroot mailing list >> buildroot at busybox.net >> http://lists.busybox.net/mailman/listinfo/buildroot > ^ permalink raw reply [flat|nested] 15+ messages in thread
* [Buildroot] [PATCH 1/2] package/gmpc: needs -lm 2019-11-17 20:54 ` Arnout Vandecappelle @ 2019-11-18 22:42 ` Peter Seiderer 2019-11-18 22:47 ` Thomas Petazzoni 0 siblings, 1 reply; 15+ messages in thread From: Peter Seiderer @ 2019-11-18 22:42 UTC (permalink / raw) To: buildroot Hello *, On Sun, 17 Nov 2019 21:54:38 +0100, Arnout Vandecappelle <arnout@mind.be> wrote: > On 17/11/2019 21:48, Peter Seiderer wrote: > > Hello *, > > > > On Sun, 17 Nov 2019 21:20:01 +0100, Peter Seiderer <ps.report@gmx.net> wrote: > > > >> Hello Arnout, > >> > >> On Sun, 17 Nov 2019 20:45:19 +0100, Arnout Vandecappelle <arnout@mind.be> wrote: > >> > >>> On 08/11/2019 22:28, Peter Seiderer wrote: > >>>> Hello Fabrice, Thomas, > >>>> > >>>> On Fri, 8 Nov 2019 22:04:42 +0100, Thomas Petazzoni <thomas.petazzoni@bootlin.com> wrote: > >>>> > >>>>> On Tue, 29 Oct 2019 22:40:45 +0100 > >>>>> Fabrice Fontaine <fontaine.fabrice@gmail.com> wrote: > >>>>> > >>>>>> gmpc forgets to link with -lm: > >>>>>> > >>>>>> /home/buildroot/autobuild/instance-2/output-1/host/opt/ext-toolchain/bin/../lib/gcc/mips-linux-gnu/5.3.0/../../../../mips-linux-gnu/bin/ld: GmpcVolume.o: undefined reference to symbol 'ceil@@GLIBC_2.0' > >>>>>> /home/buildroot/autobuild/instance-2/output-1/host/mips64el-buildroot-linux-gnu/sysroot/soft-float/el/lib64/libm.so.6: error adding symbols: DSO missing from command line > >>>>>> > >>>>>> Fixes: > >>>>>> - http://autobuild.buildroot.org/results/a79e0487135ad90530595d5c6ecc32f9c8cea7c4 > >>>>>> > >>>>>> Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com> > >>>>> > >>>>> We need to understand why this is happening now. This package has not > >>>>> been modified since July 2017, but suddenly, on October 21, 2019, it > >>>>> started failing like this. Why? Was there a change in one of the > >>>>> dependencies, that is no longer linked with libm, and that causes this > >>>>> problem ? > >>> > >>> It started because of RELRO, I think. > >>> > >>>> > >>>> Maybe the same cause/problem as in the libv4l case regarding libatomic, > >>>> evaluating vs. not evaluationg the *.la files (see [1])? > >>> > >>> And this one because of PIC_PIE. > >> > >> Any hints to one/more related commits (so I can check by reverting if it > >> changes/fix the problems)? > >> > >> Are the RELRO/PIC_PIE options related to evaluating *.la files? > > > > Did a quick search by the date (October 21, 2019) and the info from the libv4l > > case [1] and would suspect the commit 'pkgconf: Add pkgconf system lib and > > include path' [2], will do a test with this commit reverted.... > > Good point. Also there's a failure without PIC_PIE or RELRO [3]. Can confirm, reverting [2] fixes the libv4l and the gmpc linking problems... Regards, Peter > > Regards, > Arnout > > > > > Regards, > > Peter > > > > [2] https://git.buildroot.net/buildroot/commit/?id=9cc8680fe54c0b8f5008158e36e2157127f03a7e > > [3] > http://autobuild.buildroot.net/results/e7f/e7f37080c20e2131613517c3007b4569c28dbcf2 > > > > > >> > >> Regards, > >> Peter > >> > >>> > >>> Regards, > >>> Arnout > >>> > >>>> > >>>> Regards, > >>>> Peter > >>>> > >>>> [1] http://lists.busybox.net/pipermail/buildroot/2019-October/264928.html > >>>> > >>>>> > >>>>> I think I already asked this in the past: when you fix an issue, don't > >>>>> just fix the issue, but explain why the issue is happening, especially > >>>>> in situations like these. > >>>>> > >>>>> Thanks! > >>>>> > >>>>> Thomas > >>>> > >>>> _______________________________________________ > >>>> buildroot mailing list > >>>> buildroot at busybox.net > >>>> http://lists.busybox.net/mailman/listinfo/buildroot > >>>> > >>> _______________________________________________ > >>> buildroot mailing list > >>> buildroot at busybox.net > >>> http://lists.busybox.net/mailman/listinfo/buildroot > >> > >> _______________________________________________ > >> buildroot mailing list > >> buildroot at busybox.net > >> http://lists.busybox.net/mailman/listinfo/buildroot > > > _______________________________________________ > buildroot mailing list > buildroot at busybox.net > http://lists.busybox.net/mailman/listinfo/buildroot ^ permalink raw reply [flat|nested] 15+ messages in thread
* [Buildroot] [PATCH 1/2] package/gmpc: needs -lm 2019-11-18 22:42 ` Peter Seiderer @ 2019-11-18 22:47 ` Thomas Petazzoni 2019-11-19 16:18 ` Thomas Preston 0 siblings, 1 reply; 15+ messages in thread From: Thomas Petazzoni @ 2019-11-18 22:47 UTC (permalink / raw) To: buildroot Hello, Adding Thomas Preston in the loop. Thomas: one of your patch causes some regression, see below. On Mon, 18 Nov 2019 23:42:38 +0100 Peter Seiderer <ps.report@gmx.net> wrote: > > >>>>> On Tue, 29 Oct 2019 22:40:45 +0100 > > >>>>> Fabrice Fontaine <fontaine.fabrice@gmail.com> wrote: > > >>>>> > > >>>>>> gmpc forgets to link with -lm: > > >>>>>> > > >>>>>> /home/buildroot/autobuild/instance-2/output-1/host/opt/ext-toolchain/bin/../lib/gcc/mips-linux-gnu/5.3.0/../../../../mips-linux-gnu/bin/ld: GmpcVolume.o: undefined reference to symbol 'ceil@@GLIBC_2.0' > > >>>>>> /home/buildroot/autobuild/instance-2/output-1/host/mips64el-buildroot-linux-gnu/sysroot/soft-float/el/lib64/libm.so.6: error adding symbols: DSO missing from command line > > >>>>>> > > >>>>>> Fixes: > > >>>>>> - http://autobuild.buildroot.org/results/a79e0487135ad90530595d5c6ecc32f9c8cea7c4 > > >>>>>> > > >>>>>> Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com> > > >>>>> > > >>>>> We need to understand why this is happening now. This package has not > > >>>>> been modified since July 2017, but suddenly, on October 21, 2019, it > > >>>>> started failing like this. Why? Was there a change in one of the > > >>>>> dependencies, that is no longer linked with libm, and that causes this > > >>>>> problem ? > > >>> > > >>> It started because of RELRO, I think. > > >>> > > >>>> > > >>>> Maybe the same cause/problem as in the libv4l case regarding libatomic, > > >>>> evaluating vs. not evaluationg the *.la files (see [1])? > > >>> > > >>> And this one because of PIC_PIE. > > >> > > >> Any hints to one/more related commits (so I can check by reverting if it > > >> changes/fix the problems)? > > >> > > >> Are the RELRO/PIC_PIE options related to evaluating *.la files? > > > > > > Did a quick search by the date (October 21, 2019) and the info from the libv4l > > > case [1] and would suspect the commit 'pkgconf: Add pkgconf system lib and > > > include path' [2], will do a test with this commit reverted.... > > > > Good point. Also there's a failure without PIC_PIE or RELRO [3]. > > Can confirm, reverting [2] fixes the libv4l and the gmpc linking problems... Thanks for the investigation Peter! Thomas -- Thomas Petazzoni, CTO, Bootlin Embedded Linux and Kernel engineering https://bootlin.com ^ permalink raw reply [flat|nested] 15+ messages in thread
* [Buildroot] [PATCH 1/2] package/gmpc: needs -lm 2019-11-18 22:47 ` Thomas Petazzoni @ 2019-11-19 16:18 ` Thomas Preston 2019-11-19 17:58 ` Fabrice Fontaine 0 siblings, 1 reply; 15+ messages in thread From: Thomas Preston @ 2019-11-19 16:18 UTC (permalink / raw) To: buildroot Hi Thomas Petazzoni, all, Thanks for bringing this to my attention. On 18/11/2019 22:47, Thomas Petazzoni wrote: > Adding Thomas Preston in the loop. Thomas: one of your patch causes > some regression, see below. > Before the pkgconf patch, `-lm` somehow made its way into the .la files: gmpc-11.8.16-before-pkgconf-fix$ grep -lwr "\-lm" ltmain.sh.orig ltmain.sh src/libeggsmclient.la src/libeggdesktopfile.la m4/libtool.m4 libtool In addition to this, there are lots of system include and libraries littering the Makefile (which should be handled by --sysroot): -L/mnt/output/host/bin/../x86_64-buildroot-linux-gnu/sysroot/usr/lib -I/mnt/output/host/bin/../x86_64-buildroot-linux-gnu/sysroot/usr/include After the pkgconf patch, the gmpc build directory more closely resembles building upstream gmpc - which doesn't seem to require `-lm`. So why does it in buildroot? gmpc-11.8.16$ cat fedora.Dockerfile FROM fedora:30 RUN dnf install -y @development-tools RUN dnf install -y \ gob2 \ harfbuzz \ harfbuzz-devel \ intltool \ libICE \ libICE-devel \ libmpd-devel \ libSM \ libSM-devel \ libsoup-devel \ libvala \ libvala-devel \ pkgconf \ unique-devel \ vala WORKDIR /mnt CMD "/bin/bash" $ docker build -t build-gmpc - < fedora.Dockerfile $ docker run -it -v$PWD:/mnt build-gmpc ./configure --disable-mmkeys --disable-unique $ docker run -it -v$PWD:/mnt build-gmpc make $ ls -l src/gmpc -rwxr-xr-x 1 root root 5818944 Nov 19 15:52 src/gmpc Seems to work, without a -lm in sight: $ grep -rw "\-lm" ltmain.sh: # a FreeBSD bug that causes programs to crash when -lm is m4/libtool.m4: AC_CHECK_LIB(m, cos, LIBM="$LIBM -lm") m4/libtool.m4: AC_CHECK_LIB(m, cos, LIBM="-lm") libtool: # a FreeBSD bug that causes programs to crash when -lm is So I don't understand two things: 1. Where did `-lm` in the .la files come from before the pkgconf patch? 2. Why does upsteam gmpc build without `-lm`? ^ permalink raw reply [flat|nested] 15+ messages in thread
* [Buildroot] [PATCH 1/2] package/gmpc: needs -lm 2019-11-19 16:18 ` Thomas Preston @ 2019-11-19 17:58 ` Fabrice Fontaine 2019-11-19 18:31 ` Thomas Preston 2019-11-19 18:42 ` Peter Seiderer 0 siblings, 2 replies; 15+ messages in thread From: Fabrice Fontaine @ 2019-11-19 17:58 UTC (permalink / raw) To: buildroot Dear all, Le mar. 19 nov. 2019 ? 17:18, Thomas Preston <thomas.preston@codethink.co.uk> a ?crit : > > Hi Thomas Petazzoni, all, > Thanks for bringing this to my attention. > > On 18/11/2019 22:47, Thomas Petazzoni wrote: > > Adding Thomas Preston in the loop. Thomas: one of your patch causes > > some regression, see below. > > > > Before the pkgconf patch, `-lm` somehow made its way into the .la files: > > gmpc-11.8.16-before-pkgconf-fix$ grep -lwr "\-lm" > ltmain.sh.orig > ltmain.sh > src/libeggsmclient.la > src/libeggdesktopfile.la > m4/libtool.m4 > libtool > > In addition to this, there are lots of system include and libraries > littering the Makefile (which should be handled by --sysroot): > > -L/mnt/output/host/bin/../x86_64-buildroot-linux-gnu/sysroot/usr/lib > -I/mnt/output/host/bin/../x86_64-buildroot-linux-gnu/sysroot/usr/include > > After the pkgconf patch, the gmpc build directory more closely resembles > building upstream gmpc - which doesn't seem to require `-lm`. So why does > it in buildroot? > > gmpc-11.8.16$ cat fedora.Dockerfile > FROM fedora:30 > RUN dnf install -y @development-tools > RUN dnf install -y \ > gob2 \ > harfbuzz \ > harfbuzz-devel \ > intltool \ > libICE \ > libICE-devel \ > libmpd-devel \ > libSM \ > libSM-devel \ > libsoup-devel \ > libvala \ > libvala-devel \ > pkgconf \ > unique-devel \ > vala > WORKDIR /mnt > CMD "/bin/bash" > > $ docker build -t build-gmpc - < fedora.Dockerfile > $ docker run -it -v$PWD:/mnt build-gmpc ./configure --disable-mmkeys --disable-unique > $ docker run -it -v$PWD:/mnt build-gmpc make > $ ls -l src/gmpc > -rwxr-xr-x 1 root root 5818944 Nov 19 15:52 src/gmpc > > Seems to work, without a -lm in sight: > > $ grep -rw "\-lm" > ltmain.sh: # a FreeBSD bug that causes programs to crash when -lm is > m4/libtool.m4: AC_CHECK_LIB(m, cos, LIBM="$LIBM -lm") > m4/libtool.m4: AC_CHECK_LIB(m, cos, LIBM="-lm") > libtool: # a FreeBSD bug that causes programs to crash when -lm is > > So I don't understand two things: > 1. Where did `-lm` in the .la files come from before the pkgconf patch? > 2. Why does upsteam gmpc build without `-lm`? This one is easy: we're using the latest release of gmpc that is 8 years old. In this release, Math.ceil is used in https://github.com/DaveDavenport/gmpc/blob/release-11.8.16/src/Widgets/GmpcVolume.vala. Upstream removed this file 6 years ago through https://github.com/DaveDavenport/gmpc/commit/11a7d247757dd29b51c77fda7470921fd254aae8#diff-645d920fce926ffdadd85c93c2d2cda2. I assume that current gmpc does not use any math functions anymore. Best Regards, Fabrice ^ permalink raw reply [flat|nested] 15+ messages in thread
* [Buildroot] [PATCH 1/2] package/gmpc: needs -lm 2019-11-19 17:58 ` Fabrice Fontaine @ 2019-11-19 18:31 ` Thomas Preston 2019-11-19 18:42 ` Peter Seiderer 1 sibling, 0 replies; 15+ messages in thread From: Thomas Preston @ 2019-11-19 18:31 UTC (permalink / raw) To: buildroot On 19/11/2019 17:58, Fabrice Fontaine wrote: > Le mar. 19 nov. 2019 ? 17:18, Thomas Preston > <thomas.preston@codethink.co.uk> a ?crit : >> So I don't understand two things: >> 1. Where did `-lm` in the .la files come from before the pkgconf patch? >> 2. Why does upsteam gmpc build without `-lm`? > This one is easy: we're using the latest release of gmpc that is 8 years old. > In this release, Math.ceil is used in > https://github.com/DaveDavenport/gmpc/blob/release-11.8.16/src/Widgets/GmpcVolume.vala. > Upstream removed this file 6 years ago through > https://github.com/DaveDavenport/gmpc/commit/11a7d247757dd29b51c77fda7470921fd254aae8#diff-645d920fce926ffdadd85c93c2d2cda2. > I assume that current gmpc does not use any math functions anymore. Ah, when I said upstream I actually meant "the gmpc-11.8.16 tar from upstream", as opposed to building within the Buildroot environment. I should have been more clear. There are no `-lm` flags: gmpc-11.8.16$ grep -lwr "\-lm" ltmain.sh m4/libtool.m4 libtool But I can successfully build gmpc: gmpc-11.8.16$ strings src/gmpc | grep ceil lceil rceil This is outside of buildroot. Maybe we should focus on building the latest development version of gmpc from github? To be clear, I don't think the pkgconf patch has caused a regression, I think that gmpc in buildroot is broken. Although, I'm still trying to build a solid case for this. ^ permalink raw reply [flat|nested] 15+ messages in thread
* [Buildroot] [PATCH 1/2] package/gmpc: needs -lm 2019-11-19 17:58 ` Fabrice Fontaine 2019-11-19 18:31 ` Thomas Preston @ 2019-11-19 18:42 ` Peter Seiderer 2019-11-21 18:14 ` Thomas Preston 1 sibling, 1 reply; 15+ messages in thread From: Peter Seiderer @ 2019-11-19 18:42 UTC (permalink / raw) To: buildroot Hello *, On Tue, 19 Nov 2019 18:58:03 +0100, Fabrice Fontaine <fontaine.fabrice@gmail.com> wrote: > Dear all, > > Le mar. 19 nov. 2019 ? 17:18, Thomas Preston > <thomas.preston@codethink.co.uk> a ?crit : > > > > Hi Thomas Petazzoni, all, > > Thanks for bringing this to my attention. > > > > On 18/11/2019 22:47, Thomas Petazzoni wrote: > > > Adding Thomas Preston in the loop. Thomas: one of your patch causes > > > some regression, see below. > > > > > > > Before the pkgconf patch, `-lm` somehow made its way into the .la files: > > > > gmpc-11.8.16-before-pkgconf-fix$ grep -lwr "\-lm" > > ltmain.sh.orig > > ltmain.sh > > src/libeggsmclient.la > > src/libeggdesktopfile.la > > m4/libtool.m4 > > libtool > > > > In addition to this, there are lots of system include and libraries > > littering the Makefile (which should be handled by --sysroot): > > > > -L/mnt/output/host/bin/../x86_64-buildroot-linux-gnu/sysroot/usr/lib > > -I/mnt/output/host/bin/../x86_64-buildroot-linux-gnu/sysroot/usr/include > > > > After the pkgconf patch, the gmpc build directory more closely resembles > > building upstream gmpc - which doesn't seem to require `-lm`. So why does > > it in buildroot? It is not buildroot specific, but toolchain/libc specific (some implement the math functions in libc itself, some in the extra libm).... > > > > gmpc-11.8.16$ cat fedora.Dockerfile > > FROM fedora:30 > > RUN dnf install -y @development-tools > > RUN dnf install -y \ > > gob2 \ > > harfbuzz \ > > harfbuzz-devel \ > > intltool \ > > libICE \ > > libICE-devel \ > > libmpd-devel \ > > libSM \ > > libSM-devel \ > > libsoup-devel \ > > libvala \ > > libvala-devel \ > > pkgconf \ > > unique-devel \ > > vala > > WORKDIR /mnt > > CMD "/bin/bash" > > > > $ docker build -t build-gmpc - < fedora.Dockerfile > > $ docker run -it -v$PWD:/mnt build-gmpc ./configure --disable-mmkeys --disable-unique > > $ docker run -it -v$PWD:/mnt build-gmpc make > > $ ls -l src/gmpc > > -rwxr-xr-x 1 root root 5818944 Nov 19 15:52 src/gmpc > > > > Seems to work, without a -lm in sight: > > > > $ grep -rw "\-lm" > > ltmain.sh: # a FreeBSD bug that causes programs to crash when -lm is > > m4/libtool.m4: AC_CHECK_LIB(m, cos, LIBM="$LIBM -lm") > > m4/libtool.m4: AC_CHECK_LIB(m, cos, LIBM="-lm") > > libtool: # a FreeBSD bug that causes programs to crash when -lm is > > > > So I don't understand two things: > > 1. Where did `-lm` in the .la files come from before the pkgconf patch? > > 2. Why does upsteam gmpc build without `-lm`? > This one is easy: we're using the latest release of gmpc that is 8 years old. > In this release, Math.ceil is used in > https://github.com/DaveDavenport/gmpc/blob/release-11.8.16/src/Widgets/GmpcVolume.vala. > Upstream removed this file 6 years ago through > https://github.com/DaveDavenport/gmpc/commit/11a7d247757dd29b51c77fda7470921fd254aae8#diff-645d920fce926ffdadd85c93c2d2cda2. > I assume that current gmpc does not use any math functions anymore. Maybe a workaround for the gmpc case, remains the libvl42/libatomc [1] case which is about using dependent *.la files vs. ignoring dependent *.la files while linking... Regards, Peter [1] http://lists.busybox.net/pipermail/buildroot/2019-October/264928.html > > Best Regards, > > Fabrice ^ permalink raw reply [flat|nested] 15+ messages in thread
* [Buildroot] [PATCH 1/2] package/gmpc: needs -lm 2019-11-19 18:42 ` Peter Seiderer @ 2019-11-21 18:14 ` Thomas Preston 0 siblings, 0 replies; 15+ messages in thread From: Thomas Preston @ 2019-11-21 18:14 UTC (permalink / raw) To: buildroot On 19/11/2019 18:42, Peter Seiderer wrote: > Hello *, > > On Tue, 19 Nov 2019 18:58:03 +0100, Fabrice Fontaine <fontaine.fabrice@gmail.com> wrote: > >> Dear all, >> >> Le mar. 19 nov. 2019 ? 17:18, Thomas Preston >> <thomas.preston@codethink.co.uk> a ?crit : >>> >>> Hi Thomas Petazzoni, all, >>> Thanks for bringing this to my attention. >>> >>> On 18/11/2019 22:47, Thomas Petazzoni wrote: >>>> Adding Thomas Preston in the loop. Thomas: one of your patch causes >>>> some regression, see below. >>>> >>> >>> Before the pkgconf patch, `-lm` somehow made its way into the .la files: >>> >>> gmpc-11.8.16-before-pkgconf-fix$ grep -lwr "\-lm" >>> ltmain.sh.orig >>> ltmain.sh >>> src/libeggsmclient.la >>> src/libeggdesktopfile.la >>> m4/libtool.m4 >>> libtool >>> >>> In addition to this, there are lots of system include and libraries >>> littering the Makefile (which should be handled by --sysroot): >>> >>> -L/mnt/output/host/bin/../x86_64-buildroot-linux-gnu/sysroot/usr/lib >>> -I/mnt/output/host/bin/../x86_64-buildroot-linux-gnu/sysroot/usr/include >>> >>> After the pkgconf patch, the gmpc build directory more closely resembles >>> building upstream gmpc - which doesn't seem to require `-lm`. So why does >>> it in buildroot? > > It is not buildroot specific, but toolchain/libc specific (some implement the math > functions in libc itself, some in the extra libm).... > >>> >>> gmpc-11.8.16$ cat fedora.Dockerfile >>> FROM fedora:30 >>> RUN dnf install -y @development-tools >>> RUN dnf install -y \ >>> gob2 \ >>> harfbuzz \ >>> harfbuzz-devel \ >>> intltool \ >>> libICE \ >>> libICE-devel \ >>> libmpd-devel \ >>> libSM \ >>> libSM-devel \ >>> libsoup-devel \ >>> libvala \ >>> libvala-devel \ >>> pkgconf \ >>> unique-devel \ >>> vala >>> WORKDIR /mnt >>> CMD "/bin/bash" >>> >>> $ docker build -t build-gmpc - < fedora.Dockerfile >>> $ docker run -it -v$PWD:/mnt build-gmpc ./configure --disable-mmkeys --disable-unique >>> $ docker run -it -v$PWD:/mnt build-gmpc make >>> $ ls -l src/gmpc >>> -rwxr-xr-x 1 root root 5818944 Nov 19 15:52 src/gmpc >>> >>> Seems to work, without a -lm in sight: >>> >>> $ grep -rw "\-lm" >>> ltmain.sh: # a FreeBSD bug that causes programs to crash when -lm is >>> m4/libtool.m4: AC_CHECK_LIB(m, cos, LIBM="$LIBM -lm") >>> m4/libtool.m4: AC_CHECK_LIB(m, cos, LIBM="-lm") >>> libtool: # a FreeBSD bug that causes programs to crash when -lm is >>> >>> So I don't understand two things: >>> 1. Where did `-lm` in the .la files come from before the pkgconf patch? >>> 2. Why does upsteam gmpc build without `-lm`? >> This one is easy: we're using the latest release of gmpc that is 8 years old. >> In this release, Math.ceil is used in >> https://github.com/DaveDavenport/gmpc/blob/release-11.8.16/src/Widgets/GmpcVolume.vala. >> Upstream removed this file 6 years ago through >> https://github.com/DaveDavenport/gmpc/commit/11a7d247757dd29b51c77fda7470921fd254aae8#diff-645d920fce926ffdadd85c93c2d2cda2. >> I assume that current gmpc does not use any math functions anymore. > > Maybe a workaround for the gmpc case, remains the libvl42/libatomc [1] case which is about > using dependent *.la files vs. ignoring dependent *.la files while linking... > The gmpc package appears to be fixed with the same kind of patch as libv4l: diff --git a/package/gmpc/gmpc.mk b/package/gmpc/gmpc.mk index 40b77eb189..9c725db39d 100644 --- a/package/gmpc/gmpc.mk +++ b/package/gmpc/gmpc.mk @@ -6,7 +6,8 @@ GMPC_VERSION = 11.8.16 GMPC_SITE = http://download.sarine.nl/Programs/gmpc/$(GMPC_VERSION) -GMPC_CONF_ENV = ac_cv_path_GOB2=$(GOB2_HOST_BINARY) +GMPC_CONF_ENV = ac_cv_path_GOB2=$(GOB2_HOST_BINARY) \ + PKG_CONFIG_ALLOW_SYSTEM_LIBS=1 GMPC_CONF_OPTS = --disable-mmkeys --disable-unique GMPC_LICENSE = GPL-2.0+ GMPC_LICENSE_FILES = COPYING This is because this package uses libtool, which expects to find .la files in the system library dir. Another solution might be to configure the main pkg-config wrapper so that it always includes the system lib dirs (for libtool), but not system include dirs (which breaks -isystem ordering). ^ permalink raw reply [flat|nested] 15+ messages in thread
end of thread, other threads:[~2019-11-21 18:14 UTC | newest] Thread overview: 15+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2019-10-29 21:40 [Buildroot] [PATCH 1/2] package/gmpc: needs -lm Fabrice Fontaine 2019-10-29 21:40 ` [Buildroot] [PATCH 2/2] package/gmpc: fix build with NLS Fabrice Fontaine 2019-11-08 21:04 ` [Buildroot] [PATCH 1/2] package/gmpc: needs -lm Thomas Petazzoni 2019-11-08 21:28 ` Peter Seiderer 2019-11-17 19:45 ` Arnout Vandecappelle 2019-11-17 20:20 ` Peter Seiderer 2019-11-17 20:48 ` Peter Seiderer 2019-11-17 20:54 ` Arnout Vandecappelle 2019-11-18 22:42 ` Peter Seiderer 2019-11-18 22:47 ` Thomas Petazzoni 2019-11-19 16:18 ` Thomas Preston 2019-11-19 17:58 ` Fabrice Fontaine 2019-11-19 18:31 ` Thomas Preston 2019-11-19 18:42 ` Peter Seiderer 2019-11-21 18:14 ` Thomas Preston
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox