Forum > FPC development

Building FPC 3.2.2 on Debian "Testing" (Bookworm) x86_64

(1/10) > >>

MarkMLl:
I've been rebuilding my main system from Debian "Buster" to "Bookworm" since I need it to be pretty close to the bleeding edge for some stuff that I might need to build manually.

An existing FPC 3.2.2 runs OK on this, as does current Lazarus etc. and various application software built using it subject to a symlink issue I've mentioned elsewhere.

I can rebuild FPC 3.2.2 using 3.0.4 on a different system based on Debian 11 ("Bullseye") without problem.

If I try rebuilding 3.2.2 using 3.0.4 on the new system ("Bookworm") I get a failure, which appears to boil down to


--- Code: --->/usr/local/src.fpc/fpcbuild-3.2.2/fpcsrc/rtl/linux$ /usr/local/src.fpc/fpcbuild-3.2.2/fpcsrc/compiler/ppc1 -Ur -Ur -Xs -O2 -n -Fi../inc -Fi../x86_64 -Fi../unix -Fix86_64 -FE. -FU/usr/local/src.fpc/fpcbuild-3.2.2/fpcsrc/rtl/units/x86_64-linux -Cg -V3.0.4 -O- -gl -Xs- -vt -dx86_64 -dRELEASE  -Us -Sg system.pp
Segmentation fault

--- End code ---

So far I've had no success trying to get a backtrace


--- Code: --->/usr/local/src.fpc/fpcbuild-3.2.2/fpcsrc/rtl/linux$ gdb --args /usr/local/src.fpc/fpcbuild-3.2.2/fpcsrc/compiler/ppc1 -Ur -Ur -Xs -O2 -n -Fi../inc -Fi../x86_64 -Fi../unix -Fix86_64 -FE. -FU/usr/local/src.fpc/fpcbuild-3.2.2/fpcsrc/rtl/units/x86_64-linux -Cg -V3.0.4 -O- -gl -Xs- -vt -dx86_64 -dRELEASE  -Us -Sg system.pp
GNU gdb (Debian 12.1-3) 12.1
Copyright (C) 2022 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
Type "show copying" and "show warranty" for details.
This GDB was configured as "x86_64-linux-gnu".
Type "show configuration" for configuration details.
For bug reporting instructions, please see:
<https://www.gnu.org/software/gdb/bugs/>.
Find the GDB manual and other documentation resources online at:
    <http://www.gnu.org/software/gdb/documentation/>.

For help, type "help".
Type "apropos word" to search for commands related to "word"...
Reading symbols from /usr/local/src.fpc/fpcbuild-3.2.2/fpcsrc/compiler/ppc1...
(gdb) run
Starting program: /usr/local/src.fpc/fpcbuild-3.2.2/fpcsrc/compiler/ppc1 -Ur -Ur -Xs -O2 -n -Fi../inc -Fi../x86_64 -Fi../unix -Fix86_64 -FE. -FU/usr/local/src.fpc/fpcbuild-3.2.2/fpcsrc/rtl/units/x86_64-linux -Cg -V3.0.4 -O- -gl -Xs- -vt -dx86_64 -dRELEASE -Us -Sg system.pp
During startup program terminated with signal SIGSEGV, Segmentation fault.
(gdb) bt
No stack.
(gdb)

--- End code ---

I'll try working through other versions on the same system, but think I'm out of my depth.

Later: on the "Bullseye" system I can build 2.6.4 using an existing 2.6.4. On the new "Bookworm" system that fails in a way similar to that described above. I assume intervening versions behave similarly.

MarkMLl

MarkMLl:
Does anybody have any thoughts on this? Trying to look at it (with my very imperfect recollection of gdb) it appears that the problem is before I have any chance of setting a breakpoint etc.


--- Code: --->/usr/local/src.fpc/fpcbuild-3.2.2/fpcsrc/rtl/linux$ gdb --args /usr/local/src.fpc/fpcbuild-3.2.2/fpcsrc/compiler/ppc1 -Ur -Ur -Xs -O2 -n -Fi../inc -Fi../x86_64 -Fi../unix -Fix86_64 -FE. -FU/usr/local/src.fpc/fpcbuild-3.2.2/fpcsrc/rtl/units/x86_64-linux -Cg -V3.0.4 -O- -gl -Xs- -vt -dx86_64 -dRELEASE  -Us -Sg system.pp

...

Reading symbols from /usr/local/src.fpc/fpcbuild-3.2.2/fpcsrc/compiler/ppc1...
(gdb) starti
Starting program: /usr/local/src.fpc/fpcbuild-3.2.2/fpcsrc/compiler/ppc1 -Ur -Ur -Xs -O2 -n -Fi../inc -Fi../x86_64 -Fi../unix -Fix86_64 -FE. -FU/usr/local/src.fpc/fpcbuild-3.2.2/fpcsrc/rtl/units/x86_64-linux -Cg -V3.0.4 -O- -gl -Xs- -vt -dx86_64 -dRELEASE -Us -Sg system.pp
During startup program terminated with signal SIGSEGV, Segmentation fault.

--- End code ---

MarkMLl

Fred vS:
Hello Mark.

In my Bullseye system, I can build fpc 3.2.2, 3.2.3 and 3.3.1 with the "classical" script and fpc 3.2.0 or 3.2.2 compiler:


--- Code: Bash  [+][-]window.onload = function(){var x1 = document.getElementById("main_content_section"); if (x1) { var x = document.getElementsByClassName("geshi");for (var i = 0; i < x.length; i++) { x[i].style.maxHeight='none'; x[i].style.height = Math.min(x[i].clientHeight+15,306)+'px'; x[i].style.resize = "vertical";}};} ---COMPILER=fpcmake cleanmake all FPC=$COMPILER OPT="-Fl/usr/local/lib" make FPC=$COMPILER install INSTALL_PREFIX=/usr/
But I did not try yet to build fpc 2.6.4. nor install last unstable Debian Bookworm.

Did you try to build fpc 3.2.2 using fpc 3.2.0 on Debian Bookworm?
Also do you have a idea of what difference between Bullseye vs Bookworm that could explain the fail of compilation?

MarkMLl:

--- Quote from: Fred vS on October 25, 2022, 12:05:07 pm ---But I did not try yet to build fpc 2.6.4. nor install last unstable Debian Bookworm.

Did you try to build fpc 3.2.2 using fpc 3.2.0 on Debian Bookworm?
Also do you have a idea of what difference between Bullseye vs Bookworm that could explain the fail of compilation?

--- End quote ---

Bullseye is no problem at all, I can definitely build 3.2.2 and 2.6.4 so presume that the intervening versions are also OK.

The error as described was using 3.0.4 as the starting compiler, which I thought was SOP. If I switch to using 3.2.0 to build 3.2.2 things appear to progress further... I'll update this in a few minutes but want to post early in case anybody else is scratching their head.

MarkMLl

Fred vS:

--- Quote from: MarkMLl on October 25, 2022, 12:31:27 pm ---I'll update this in a few minutes but want to post early in case anybody else is scratching their head.

--- End quote ---

Ho, many thanks to be the explorer and save us a lot of hair, I will deeply study your result (and then maybe install Bookworm for testing).

Navigation

[0] Message Index

[#] Next page

Go to full version