Il 25/07/21 19:39, Florian Weimer ha scritto: > * Mattia Verga via devel: > >> Hello folks, >> >> I've just noticed that in F35 Mass rebuild everything related to Free >> Pascal is now failing to build. >> The fpc compiler itself is FTB with the following output: >> >> /usr/bin/ld: >> /builddir/build/BUILD/fpcbuild-3.2.2/fpcsrc/rtl/units/powerpc64-linux/si_c.o:(.data.n_TC_$SI_C_$$_START_ADDRESSES+0x10): >> undefined reference to `__libc_csu_init' >> /usr/bin/ld: >> /builddir/build/BUILD/fpcbuild-3.2.2/fpcsrc/rtl/units/powerpc64-linux/si_c.o:(.data.n_TC_$SI_C_$$_START_ADDRESSES+0x18): >> undefined reference to `__libc_csu_fini' >> Error: Error while linking >> >> From a quick search on search engines it seems a glibc misconfiguration >> of some sort... ? >> The latest fpc that was built successfully on F35 used glibc >> 2.33.9000-2.fc35 > It's related to startup code hardening in glibc. In general, it's not > forward-compatible to call internal glibc functions this way. > __libc_csu_init and __libc_csu_fini where never part of any header file. > > It's not clear to me why fpc needs to replace the startup code. They > could supply a C main function and call Pascall code from that. Or > compile the main program in such a way that it has a compatible > interface with the C main program. > > To adjust to the glibc 2.34 changes without fixing the underlying > problem, use this: > > - .quad __libc_csu_init > - .quad __libc_csu_fini > + .quad 0 > + .quad 0 > > Similarly for the other architectures. > > You can use this glibc commit for reference purposes: > > commit 035c012e32c11e84d64905efaf55e74f704d3668 > Author: Florian Weimer <fwei...@redhat.com> > Date: Thu Feb 25 12:10:57 2021 +0100 > > Reduce the statically linked startup code [BZ #23323] > > Note that if these changes are applied on older glibc versions (before > 2.34), ELF constructors for the main program will no longer run. But > apart from that, I think this will be a compatible change. > > Please also add the glibc copyright headers where they are missing. > > Thanks, > Florian > Thanks Florian, I'll CC the fpc maintainers to the discussion, since I really have no knowledge about what we're talking ;-)
Mattia _______________________________________________ devel mailing list -- devel@lists.fedoraproject.org To unsubscribe send an email to devel-le...@lists.fedoraproject.org Fedora Code of Conduct: https://docs.fedoraproject.org/en-US/project/code-of-conduct/ List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines List Archives: https://lists.fedoraproject.org/archives/list/devel@lists.fedoraproject.org Do not reply to spam on the list, report it: https://pagure.io/fedora-infrastructure