> Am 07.08.2021 um 16:59 schrieb Mattia Verga via fpc-devel > <fpc-devel@lists.freepascal.org>: > > Fedora has recently moved to using glibc 2.34. That caused Free Pascal > Compiler to stop building 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 > > One of the guys responsible for glibc in Fedora gave this explanation: > >> 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.
This is not what we want. We just want to initialize glibc from *our* startup code for various reasons. And if a library is written properly, this must be possible. _______________________________________________ fpc-devel maillist - fpc-devel@lists.freepascal.org https://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel