View Issue Details

IDProjectCategoryView StatusLast Update
0035751FPCCompilerpublic2019-07-11 21:28
ReporterCyraxAssigned To 
PrioritynormalSeverityminorReproducibilityalways
Status newResolutionopen 
PlatformLinux x86_64OSArchOS Version3.17.4-1
Product Version3.3.1Product Buildr42267 
Target VersionFixed in Version 
Summary0035751: make all fails when building Linux/i386 with psabieh
DescriptionI'm trying to test new feature "Dwarf-eh-based "zero-cost" exceptions" which were merged back to trunk at r42260. However building the compiler suite fails during building pas2jslib package.
Additional Information
Considering package utils-pas2js
  Search path for external dependency fcl-js
  File "/mnt/shares/ohjelmointi2/fpc/source/git_source/fcl-js/fpmake.pp" Not Found
  Directory "/mnt/shares/ohjelmointi2/fpc/source/git_source/units/i386-linux/fcl-js" Not Found
  File "/mnt/shares/ohjelmointi2/fpc/source/git_source/packages/fcl-js/fpmake.pp" Found
  Directory "/mnt/shares/ohjelmointi2/fpc/source/git_source/packages/fcl-js/units/i386-linux/" Found
  File "/mnt/shares/ohjelmointi2/fpc/source/git_source/packages/fcl-js/fcl-js-i386-linux.fpm" Found
  External dependency fcl-js found in "/mnt/shares/ohjelmointi2/fpc/source/git_source/packages/fcl-js/units/i386-linux/"
  Loading "/mnt/shares/ohjelmointi2/fpc/source/git_source/packages/fcl-js/fcl-js-i386-linux.fpm"
  Search path for external dependency pastojs
  File "/mnt/shares/ohjelmointi2/fpc/source/git_source/pastojs/fpmake.pp" Not Found
  Directory "/mnt/shares/ohjelmointi2/fpc/source/git_source/units/i386-linux/pastojs" Not Found
  File "/mnt/shares/ohjelmointi2/fpc/source/git_source/packages/pastojs/fpmake.pp" Found
  Directory "/mnt/shares/ohjelmointi2/fpc/source/git_source/packages/pastojs/units/i386-linux/" Found
  File "/mnt/shares/ohjelmointi2/fpc/source/git_source/packages/pastojs/pastojs-i386-linux.fpm" Found
  External dependency pastojs found in "/mnt/shares/ohjelmointi2/fpc/source/git_source/packages/pastojs/units/i386-linux/"
  Loading "/mnt/shares/ohjelmointi2/fpc/source/git_source/packages/pastojs/pastojs-i386-linux.fpm"
  Search path for external dependency webidl
  File "/mnt/shares/ohjelmointi2/fpc/source/git_source/webidl/fpmake.pp" Not Found
  Directory "/mnt/shares/ohjelmointi2/fpc/source/git_source/units/i386-linux/webidl" Not Found
  File "/mnt/shares/ohjelmointi2/fpc/source/git_source/packages/webidl/fpmake.pp" Found
  Directory "/mnt/shares/ohjelmointi2/fpc/source/git_source/packages/webidl/units/i386-linux/" Found
  File "/mnt/shares/ohjelmointi2/fpc/source/git_source/packages/webidl/webidl-i386-linux.fpm" Found
  External dependency webidl found in "/mnt/shares/ohjelmointi2/fpc/source/git_source/packages/webidl/units/i386-linux/"
  Loading "/mnt/shares/ohjelmointi2/fpc/source/git_source/packages/webidl/webidl-i386-linux.fpm"
  Resolving filenames of target pas2js for i386-linux
    Resolved source file pas2js.pp to "pas2js.pp"
  Resolving filenames of target pas2jslib for i386-linux
    Resolved source file pas2jslib.pp to "pas2jslib.pp"
  Resolving filenames of target dirwatch for i386-linux
    Resolved source file dirwatch.pp to "dirwatch.pp"
  Resolving filenames of target httpcompiler for i386-linux
    Resolved source file httpcompiler.pp to "httpcompiler.pp"
  Resolving filenames of target compileserver for i386-linux
    Resolved source file compileserver.pp to "compileserver.pp"
  Resolving filenames of target webidl2pas for i386-linux
    Resolved source file webidl2pas.pp to "webidl2pas.pp"
  Output file pas2js/bin/i386-linux/pas2js not available
  Must compile pas2js. (Output file does not exist)
  Must compile utils-pas2js. ()
Start compiling package utils-pas2js for target i386-linux.
Directory "pas2js/units/i386-linux/" Not Found
Creating output dir "pas2js/units/i386-linux/"
Directory "pas2js/bin/i386-linux" Not Found
Creating output dir "pas2js/bin/i386-linux"
Considering target dirwatch
  Compiling dependencies of target dirwatch
  Output file pas2js/units/i386-linux/dirwatch.ppu not available
  Must compile dirwatch. (Output file does not exist)
  Compiling target dirwatch
Considering target httpcompiler
  Compiling dependencies of target httpcompiler
  Output file pas2js/units/i386-linux/httpcompiler.ppu not available
  Must compile httpcompiler. (Output file does not exist)
  Compiling target httpcompiler
Generate build-unit BuildUnit_utils_pas2js
Compiling target BuildUnit_utils_pas2js
  Executing command "/mnt/shares/ohjelmointi2/fpc/source/git_source/compiler/ppc386 -Tlinux -FUpas2js/units/i386-linux/ -Fu/mnt/shares/ohjelmointi2/fpc/source/git_source/rtl/units/i386-linux/ -Fu/mnt/shares/ohjelmointi2/fpc/source/git_source/packages/fcl-json/units/i386-linux/ -Fu/mnt/shares/ohjelmointi2/fpc/source/git_source/packages/fcl-base/units/i386-linux/ -Fu/mnt/shares/ohjelmointi2/fpc/source/git_source/packages/fcl-res/units/i386-linux/ -Fu/mnt/shares/ohjelmointi2/fpc/source/git_source/packages/rtl-objpas/units/i386-linux/ -Fu/mnt/shares/ohjelmointi2/fpc/source/git_source/packages/fcl-js/units/i386-linux/ -Fu/mnt/shares/ohjelmointi2/fpc/source/git_source/packages/fcl-passrc/units/i386-linux/ -Fu/mnt/shares/ohjelmointi2/fpc/source/git_source/packages/pastojs/units/i386-linux/ -Fu/mnt/shares/ohjelmointi2/fpc/source/git_source/packages/paszlib/units/i386-linux/ -Fu/mnt/shares/ohjelmointi2/fpc/source/git_source/packages/hash/units/i386-linux/ -Fu/mnt/shares/ohjelmointi2/fpc/source/git_source/packages/fcl-process/units/i386-linux/ -Fu/mnt/shares/ohjelmointi2/fpc/source/git_source/packages/fcl-web/units/i386-linux/ -Fu/mnt/shares/ohjelmointi2/fpc/source/git_source/packages/fcl-db/units/i386-linux/ -Fu/mnt/shares/ohjelmointi2/fpc/source/git_source/packages/fcl-xml/units/i386-linux/ -Fu/mnt/shares/ohjelmointi2/fpc/source/git_source/packages/iconvenc/units/i386-linux/ -Fu/mnt/shares/ohjelmointi2/fpc/source/git_source/packages/rtl-extra/units/i386-linux/ -Fu/mnt/shares/ohjelmointi2/fpc/source/git_source/packages/ibase/units/i386-linux/ -Fu/mnt/shares/ohjelmointi2/fpc/source/git_source/packages/mysql/units/i386-linux/ -Fu/mnt/shares/ohjelmointi2/fpc/source/git_source/packages/odbc/units/i386-linux/ -Fu/mnt/shares/ohjelmointi2/fpc/source/git_source/packages/oracle/units/i386-linux/ -Fu/mnt/shares/ohjelmointi2/fpc/source/git_source/packages/postgres/units/i386-linux/ -Fu/mnt/shares/ohjelmointi2/fpc/source/git_source/packages/sqlite/units/i386-linux/ -Fu/mnt/shares/ohjelmointi2/fpc/source/git_source/packages/dblib/units/i386-linux/ -Fu/mnt/shares/ohjelmointi2/fpc/source/git_source/packages/pxlib/units/i386-linux/ -Fu/mnt/shares/ohjelmointi2/fpc/source/git_source/packages/fcl-net/units/i386-linux/ -Fu/mnt/shares/ohjelmointi2/fpc/source/git_source/packages/fcl-async/units/i386-linux/ -Fu/mnt/shares/ohjelmointi2/fpc/source/git_source/packages/fcl-fpcunit/units/i386-linux/ -Fu/mnt/shares/ohjelmointi2/fpc/source/git_source/packages/libtar/units/i386-linux/ -Fu/mnt/shares/ohjelmointi2/fpc/source/git_source/packages/openssl/units/i386-linux/ -Fu/mnt/shares/ohjelmointi2/fpc/source/git_source/packages/fastcgi/units/i386-linux/ -Fu/mnt/shares/ohjelmointi2/fpc/source/git_source/packages/httpd22/units/i386-linux/ -Fu/mnt/shares/ohjelmointi2/fpc/source/git_source/packages/httpd24/units/i386-linux/ -Fu/mnt/shares/ohjelmointi2/fpc/source/git_source/packages/webidl/units/i386-linux/ -Ur -Xs -O2 -n -gw2 -godwarfsets -godwarfmethodclassprefix -gl -O- -Xs- -Si- -vbq -Sew- -dEXTDEBUG -vh- -vn- -vw- -dDEBUG_NODE_DUMP -Fl/usr/lib/gcc/i686-pc-linux-gnu/8.3.0 -dpsabieh -dTEST_WIN32_SEH -di386 -dRELEASE -viq pas2js/BuildUnit_utils_pas2js.pp"
       Compiling pas2js/BuildUnit_utils_pas2js.pp
       Compiling pas2js/dirwatch.pp
       Compiling pas2js/httpcompiler.pp
Deleted file "pas2js/units/i386-linux/BuildUnit_utils_pas2js.o"
File "pas2js/units/i386-linux/BuildUnit_utils_pas2js.bc" does not exist
Deleted file "pas2js/units/i386-linux/BuildUnit_utils_pas2js.ppu"
Deleted file "pas2js/BuildUnit_utils_pas2js.pp"
Considering target pas2js
  Compiling dependencies of target pas2js
  Output file pas2js/bin/i386-linux/pas2js not available
  Must compile pas2js. (Output file does not exist)
  Compiling target pas2js
    Executing command "/mnt/shares/ohjelmointi2/fpc/source/git_source/compiler/ppc386 -Tlinux -FEpas2js/bin/i386-linux -FUpas2js/units/i386-linux/ -Fu/mnt/shares/ohjelmointi2/fpc/source/git_source/rtl/units/i386-linux/ -Fu/mnt/shares/ohjelmointi2/fpc/source/git_source/packages/fcl-json/units/i386-linux/ -Fu/mnt/shares/ohjelmointi2/fpc/source/git_source/packages/fcl-base/units/i386-linux/ -Fu/mnt/shares/ohjelmointi2/fpc/source/git_source/packages/fcl-res/units/i386-linux/ -Fu/mnt/shares/ohjelmointi2/fpc/source/git_source/packages/rtl-objpas/units/i386-linux/ -Fu/mnt/shares/ohjelmointi2/fpc/source/git_source/packages/fcl-js/units/i386-linux/ -Fu/mnt/shares/ohjelmointi2/fpc/source/git_source/packages/fcl-passrc/units/i386-linux/ -Fu/mnt/shares/ohjelmointi2/fpc/source/git_source/packages/pastojs/units/i386-linux/ -Fu/mnt/shares/ohjelmointi2/fpc/source/git_source/packages/paszlib/units/i386-linux/ -Fu/mnt/shares/ohjelmointi2/fpc/source/git_source/packages/hash/units/i386-linux/ -Fu/mnt/shares/ohjelmointi2/fpc/source/git_source/packages/fcl-process/units/i386-linux/ -Fu/mnt/shares/ohjelmointi2/fpc/source/git_source/packages/fcl-web/units/i386-linux/ -Fu/mnt/shares/ohjelmointi2/fpc/source/git_source/packages/fcl-db/units/i386-linux/ -Fu/mnt/shares/ohjelmointi2/fpc/source/git_source/packages/fcl-xml/units/i386-linux/ -Fu/mnt/shares/ohjelmointi2/fpc/source/git_source/packages/iconvenc/units/i386-linux/ -Fu/mnt/shares/ohjelmointi2/fpc/source/git_source/packages/rtl-extra/units/i386-linux/ -Fu/mnt/shares/ohjelmointi2/fpc/source/git_source/packages/ibase/units/i386-linux/ -Fu/mnt/shares/ohjelmointi2/fpc/source/git_source/packages/mysql/units/i386-linux/ -Fu/mnt/shares/ohjelmointi2/fpc/source/git_source/packages/odbc/units/i386-linux/ -Fu/mnt/shares/ohjelmointi2/fpc/source/git_source/packages/oracle/units/i386-linux/ -Fu/mnt/shares/ohjelmointi2/fpc/source/git_source/packages/postgres/units/i386-linux/ -Fu/mnt/shares/ohjelmointi2/fpc/source/git_source/packages/sqlite/units/i386-linux/ -Fu/mnt/shares/ohjelmointi2/fpc/source/git_source/packages/dblib/units/i386-linux/ -Fu/mnt/shares/ohjelmointi2/fpc/source/git_source/packages/pxlib/units/i386-linux/ -Fu/mnt/shares/ohjelmointi2/fpc/source/git_source/packages/fcl-net/units/i386-linux/ -Fu/mnt/shares/ohjelmointi2/fpc/source/git_source/packages/fcl-async/units/i386-linux/ -Fu/mnt/shares/ohjelmointi2/fpc/source/git_source/packages/fcl-fpcunit/units/i386-linux/ -Fu/mnt/shares/ohjelmointi2/fpc/source/git_source/packages/libtar/units/i386-linux/ -Fu/mnt/shares/ohjelmointi2/fpc/source/git_source/packages/openssl/units/i386-linux/ -Fu/mnt/shares/ohjelmointi2/fpc/source/git_source/packages/fastcgi/units/i386-linux/ -Fu/mnt/shares/ohjelmointi2/fpc/source/git_source/packages/httpd22/units/i386-linux/ -Fu/mnt/shares/ohjelmointi2/fpc/source/git_source/packages/httpd24/units/i386-linux/ -Fu/mnt/shares/ohjelmointi2/fpc/source/git_source/packages/webidl/units/i386-linux/ -Ur -Xs -O2 -n -gw2 -godwarfsets -godwarfmethodclassprefix -gl -O- -Xs- -Si- -vbq -Sew- -dEXTDEBUG -vh- -vn- -vw- -dDEBUG_NODE_DUMP -Fl/usr/lib/gcc/i686-pc-linux-gnu/8.3.0 -dpsabieh -dTEST_WIN32_SEH -di386 -dRELEASE -viq pas2js/pas2js.pp"
       Compiling pas2js/pas2js.pp
       Linking pas2js/bin/i386-linux/pas2js
Considering target pas2jslib
  Compiling dependencies of target pas2jslib
  Output file pas2js/bin/i386-linux/libpas2jslib.so not available
  Must compile pas2jslib. (Output file does not exist)
  Compiling target pas2jslib
    Executing command "/mnt/shares/ohjelmointi2/fpc/source/git_source/compiler/ppc386 -Tlinux -FEpas2js/bin/i386-linux -FUpas2js/units/i386-linux/ -Fu/mnt/shares/ohjelmointi2/fpc/source/git_source/rtl/units/i386-linux/ -Fu/mnt/shares/ohjelmointi2/fpc/source/git_source/packages/fcl-json/units/i386-linux/ -Fu/mnt/shares/ohjelmointi2/fpc/source/git_source/packages/fcl-base/units/i386-linux/ -Fu/mnt/shares/ohjelmointi2/fpc/source/git_source/packages/fcl-res/units/i386-linux/ -Fu/mnt/shares/ohjelmointi2/fpc/source/git_source/packages/rtl-objpas/units/i386-linux/ -Fu/mnt/shares/ohjelmointi2/fpc/source/git_source/packages/fcl-js/units/i386-linux/ -Fu/mnt/shares/ohjelmointi2/fpc/source/git_source/packages/fcl-passrc/units/i386-linux/ -Fu/mnt/shares/ohjelmointi2/fpc/source/git_source/packages/pastojs/units/i386-linux/ -Fu/mnt/shares/ohjelmointi2/fpc/source/git_source/packages/paszlib/units/i386-linux/ -Fu/mnt/shares/ohjelmointi2/fpc/source/git_source/packages/hash/units/i386-linux/ -Fu/mnt/shares/ohjelmointi2/fpc/source/git_source/packages/fcl-process/units/i386-linux/ -Fu/mnt/shares/ohjelmointi2/fpc/source/git_source/packages/fcl-web/units/i386-linux/ -Fu/mnt/shares/ohjelmointi2/fpc/source/git_source/packages/fcl-db/units/i386-linux/ -Fu/mnt/shares/ohjelmointi2/fpc/source/git_source/packages/fcl-xml/units/i386-linux/ -Fu/mnt/shares/ohjelmointi2/fpc/source/git_source/packages/iconvenc/units/i386-linux/ -Fu/mnt/shares/ohjelmointi2/fpc/source/git_source/packages/rtl-extra/units/i386-linux/ -Fu/mnt/shares/ohjelmointi2/fpc/source/git_source/packages/ibase/units/i386-linux/ -Fu/mnt/shares/ohjelmointi2/fpc/source/git_source/packages/mysql/units/i386-linux/ -Fu/mnt/shares/ohjelmointi2/fpc/source/git_source/packages/odbc/units/i386-linux/ -Fu/mnt/shares/ohjelmointi2/fpc/source/git_source/packages/oracle/units/i386-linux/ -Fu/mnt/shares/ohjelmointi2/fpc/source/git_source/packages/postgres/units/i386-linux/ -Fu/mnt/shares/ohjelmointi2/fpc/source/git_source/packages/sqlite/units/i386-linux/ -Fu/mnt/shares/ohjelmointi2/fpc/source/git_source/packages/dblib/units/i386-linux/ -Fu/mnt/shares/ohjelmointi2/fpc/source/git_source/packages/pxlib/units/i386-linux/ -Fu/mnt/shares/ohjelmointi2/fpc/source/git_source/packages/fcl-net/units/i386-linux/ -Fu/mnt/shares/ohjelmointi2/fpc/source/git_source/packages/fcl-async/units/i386-linux/ -Fu/mnt/shares/ohjelmointi2/fpc/source/git_source/packages/fcl-fpcunit/units/i386-linux/ -Fu/mnt/shares/ohjelmointi2/fpc/source/git_source/packages/libtar/units/i386-linux/ -Fu/mnt/shares/ohjelmointi2/fpc/source/git_source/packages/openssl/units/i386-linux/ -Fu/mnt/shares/ohjelmointi2/fpc/source/git_source/packages/fastcgi/units/i386-linux/ -Fu/mnt/shares/ohjelmointi2/fpc/source/git_source/packages/httpd22/units/i386-linux/ -Fu/mnt/shares/ohjelmointi2/fpc/source/git_source/packages/httpd24/units/i386-linux/ -Fu/mnt/shares/ohjelmointi2/fpc/source/git_source/packages/webidl/units/i386-linux/ -Ur -Xs -O2 -n -gw2 -godwarfsets -godwarfmethodclassprefix -gl -O- -Xs- -Si- -vbq -Sew- -dEXTDEBUG -vh- -vn- -vw- -dDEBUG_NODE_DUMP -Fl/usr/lib/gcc/i686-pc-linux-gnu/8.3.0 -dpsabieh -dTEST_WIN32_SEH -di386 -dRELEASE -viq pas2js/pas2jslib.pp"
       Compiling pas2js/pas2jslib.pp
       Linking pas2js/bin/i386-linux/libpas2jslib.so
Runtime error 217 at $08066589
  $08066589  _FPC_PSABIEH_PERSONALITY_V0,  line 919 of ../inc/psabieh.inc
  $F7F627D3 line 64 of /build/gcc/src/gcc/libgcc/unwind.inc

make[2]: *** [Makefile:2499: all] Error 217
make[2]: Leaving directory '/mnt/shares/ohjelmointi2/fpc/source/git_source/utils'
make[1]: *** [Makefile:2679: utils_all] Error 2
make[1]: Leaving directory '/mnt/shares/ohjelmointi2/fpc/source/git_source'
make: *** [Makefile:2884: build-stamp.i386-linux] Error 2
TagsNo tags attached.
Fixed in Revision
FPCOldBugId
FPCTarget-
Attached Files
  • x86_64-linux 26573614-make_log.tar.gz (45,504 bytes)
  • i386-linux 19226213-make_log.tar.gz (148,371 bytes)
  • ppc386 gdb backtrace.tar.gz (276,824 bytes)
  • make log gdb attach log.tar.gz (551,819 bytes)
  • fpmake.pp.patch (676 bytes)
    --- a/utils/pas2js/fpmake.pp
    +++ b/utils/pas2js/fpmake.pp
    @@ -9,7 +9,7 @@
     
     Var
       P : TPackage;
    -  PT,T : TTarget;
    +  PT,T,TL : TTarget;
     
     begin
       With Installer do
    @@ -35,7 +35,10 @@
         P.Dependencies.Add('fcl-web');
         P.Dependencies.Add('webidl');
         PT:=P.Targets.AddProgram('pas2js.pp');
    -    PT:=P.Targets.AddLibrary('pas2jslib.pp');
    +    TL:=P.Targets.AddLibrary('pas2jslib.pp');
    +    {$IF DEFINED(FPC_USE_PSABIEH) AND DEFINED(CPUI386)}
    +    TL.Options.Add('-Cg');
    +    {$ENDIF DEFINED(FPC_USE_PSABIEH) AND DEFINED(CPUI386)} 
         PT:=P.Targets.AddUnit('dirwatch.pp');
         PT:=P.Targets.AddUnit('httpcompiler.pp');
         PT.Dependencies.AddUnit('dirwatch');
    
    
    fpmake.pp.patch (676 bytes)

Relationships

related to 0035822 new Lazarus Lazarus always creates zero size pascal sources when it tries to get necessary info from the FPC compiler, please correct this. 

Activities

Cyrax

2019-06-22 14:23

reporter   ~0116836

I'm trying to build compiler for i386 target.

Cyrax

2019-06-22 14:34

reporter   ~0116838

No. Summary is wrong now.
It is full i686 linux system (Arch) inside a LXC container.

Cyrax

2019-06-22 14:39

reporter   ~0116839

This is the make command which is used to build the whole thing:

make clean all install OPT=-gw2 -godwarfsets -godwarfmethodclassprefix -gl -O- -Xs- -Si- -vbq -Sew- -dEXTDEBUG -vh- -vn- -vw- -dDEBUG_NODE_DUMP -Fl/lib -Fl/usr/lib -Fl/usr/lib/gcc/i686-pc-linux-gnu/8.3.0 -dpsabieh  -dTEST_WIN32_SEH FPC=fpc REVSTR=42267 IDE=1 NOWPOCYCLE=1 INSTALL_PREFIX=/mnt/shares/ohjelmointi2/fpc/i386/trunk/3.3.1/binary/trunk 

Cyrax

2019-06-22 14:41

reporter   ~0116840

Last edited: 2019-06-22 14:42

View 2 revisions

GCC version.

$gcc --version
gcc (GCC) 8.3.0
Copyright (C) 2018 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.


Cyrax

2019-06-22 15:08

reporter   ~0116841

Last edited: 2019-06-22 15:19

View 3 revisions

Make log from an attempt of build FPC trunk for x86_64-linux.

Building for x86_64-linux target fails at early than building for i386 target.

$ gcc --version
gcc (GCC) 9.1.0
Copyright (C) 2019 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.




x86_64-linux 26573614-make_log.tar.gz (45,504 bytes)

Cyrax

2019-06-22 15:13

reporter   ~0116842

/usr/bin/mv -f x86_64/bin/x86_64-linux/pp ppcx64
make[5]: Leaving directory '/mnt/shares/ohjelmointi2/fpc/source/git_source/compiler'
make echotime
make[5]: Entering directory '/mnt/shares/ohjelmointi2/fpc/source/git_source/compiler'
Start now 15:57:01
make[5]: Leaving directory '/mnt/shares/ohjelmointi2/fpc/source/git_source/compiler'
make[4]: Leaving directory '/mnt/shares/ohjelmointi2/fpc/source/git_source/compiler'
/usr/bin/rm -f ppc2
/usr/bin/mv -f ppcx64 ppc2
make 'FPC=/mnt/shares/ohjelmointi2/fpc/source/git_source/compiler/ppc2' 'OLDFPC=/mnt/shares/ohjelmointi2/fpc/source/git_source/compiler/ppc1' next CYCLELEVEL=3
make[4]: Entering directory '/mnt/shares/ohjelmointi2/fpc/source/git_source/compiler'
Runtime error 217 at $000000000041B502
  $000000000041B502  _FPC_PSABIEH_PERSONALITY_V0,  line 919 of ../inc/psabieh.inc
  $00007FAA9EE0D6D3

make rtlclean
make[5]: Entering directory '/mnt/shares/ohjelmointi2/fpc/source/git_source/compiler'
Runtime error 217 at $000000000041B502
  $000000000041B502  _FPC_PSABIEH_PERSONALITY_V0,  line 919 of ../inc/psabieh.inc
  $00007F4970C626D3

make -C /mnt/shares/ohjelmointi2/fpc/source/git_source/rtl clean
make[6]: Entering directory '/mnt/shares/ohjelmointi2/fpc/source/git_source/rtl'
Runtime error 217 at $000000000041B502
  $000000000041B502  _FPC_PSABIEH_PERSONALITY_V0,  line 919 of ../inc/psabieh.inc
  $00007FA2CE7BA6D3

Cyrax

2019-06-22 15:19

reporter   ~0116843

Here is make log for i386 target.

i386-linux 19226213-make_log.tar.gz (148,371 bytes)

Cyrax

2019-06-22 16:58

reporter   ~0116853

In attached file you will find gdb backtrace at the point where FPC were compiling the pas2jslib package.

ppc386 gdb backtrace.tar.gz (276,824 bytes)

Cyrax

2019-06-25 12:09

reporter   ~0116918

Last edited: 2019-06-25 13:01

View 2 revisions

Attaching log files from another unsuccessful build attempt.

EDIT : FPC trunk r42282.



make log gdb attach log.tar.gz (551,819 bytes)

Cyrax

2019-07-09 14:29

reporter   ~0117122

/usr/bin/ld: /usr/lib/gcc/i686-pc-linux-gnu/8.3.0/crtbegin.o: direct GOT relocation R_386_GOT32X against `_ITM_deregisterTMCloneTable' without base register can not be used when making a shared object
[0.783] Executing "/usr/bin/ld" with command line "-b elf32-i386 -m elf_i386  --verbose -init FPC_SHARED_LIB_START -fini FPC_LIB_EXIT -soname libpas2jslib.so   -shared  -L. -o pas2js/bin/i386-linux/libpas2jslib.so -T pas2js/bin/i386-linux/link.res"
[1.314]/usr/bin/ld: final link failed: nonrepresentable section on output
Runtime error 217 at $08066559
  $08066559  _FPC_PSABIEH_PERSONALITY_V0,  line 919 of ../inc/psabieh.inc
  $F7F73F2C line 64 of /usr/src/debug/gcc/libgcc/unwind.inc

make[2]: *** [Makefile:2499: all] Error 217
make[2]: Leaving directory '/mnt/shares/ohjelmointi2/fpc/source/git_source/utils'
make[1]: *** [Makefile:2679: utils_all] Error 2
make[1]: Leaving directory '/mnt/shares/ohjelmointi2/fpc/source/git_source'
make: *** [Makefile:2884: build-stamp.i386-linux] Error 2


FPC trunk r42344.

Cyrax

2019-07-09 16:43

reporter   ~0117124

Last edited: 2019-07-09 16:58

View 2 revisions

Attached patch which fixes this bug.

EDIT: This patch allows building the FPC suite but it doesn't fix the compiler. Somehow compiler goes stuck when trying to compile totally empty file.



fpmake.pp.patch (676 bytes)
--- a/utils/pas2js/fpmake.pp
+++ b/utils/pas2js/fpmake.pp
@@ -9,7 +9,7 @@
 
 Var
   P : TPackage;
-  PT,T : TTarget;
+  PT,T,TL : TTarget;
 
 begin
   With Installer do
@@ -35,7 +35,10 @@
     P.Dependencies.Add('fcl-web');
     P.Dependencies.Add('webidl');
     PT:=P.Targets.AddProgram('pas2js.pp');
-    PT:=P.Targets.AddLibrary('pas2jslib.pp');
+    TL:=P.Targets.AddLibrary('pas2jslib.pp');
+    {$IF DEFINED(FPC_USE_PSABIEH) AND DEFINED(CPUI386)}
+    TL.Options.Add('-Cg');
+    {$ENDIF DEFINED(FPC_USE_PSABIEH) AND DEFINED(CPUI386)} 
     PT:=P.Targets.AddUnit('dirwatch.pp');
     PT:=P.Targets.AddUnit('httpcompiler.pp');
     PT.Dependencies.AddUnit('dirwatch');

fpmake.pp.patch (676 bytes)

Issue History

Date Modified Username Field Change
2019-06-22 14:22 Cyrax New Issue
2019-06-22 14:23 Cyrax Note Added: 0116836
2019-06-22 14:29 Jonas Maebe Summary Building FPC trunk compiler suite stops at pas2jslib package and after while gives "Runtime error 217" exception. => make all fails when building from Linux/x86-64 to Linux/i386 with psabieh
2019-06-22 14:29 Jonas Maebe FPCTarget => -
2019-06-22 14:34 Cyrax Note Added: 0116838
2019-06-22 14:39 Cyrax Note Added: 0116839
2019-06-22 14:41 Cyrax Note Added: 0116840
2019-06-22 14:42 Cyrax Note Edited: 0116840 View Revisions
2019-06-22 15:06 Jonas Maebe Summary make all fails when building from Linux/x86-64 to Linux/i386 with psabieh => make all fails when building Linux/i386 with psabieh
2019-06-22 15:08 Cyrax File Added: x86_64-linux 26573614-make_log.tar.gz
2019-06-22 15:08 Cyrax Note Added: 0116841
2019-06-22 15:09 Cyrax Note Edited: 0116841 View Revisions
2019-06-22 15:13 Cyrax Note Added: 0116842
2019-06-22 15:19 Cyrax Note Edited: 0116841 View Revisions
2019-06-22 15:19 Cyrax File Added: i386-linux 19226213-make_log.tar.gz
2019-06-22 15:19 Cyrax Note Added: 0116843
2019-06-22 16:58 Cyrax File Added: ppc386 gdb backtrace.tar.gz
2019-06-22 16:58 Cyrax Note Added: 0116853
2019-06-25 12:09 Cyrax File Added: make log gdb attach log.tar.gz
2019-06-25 12:09 Cyrax Note Added: 0116918
2019-06-25 13:01 Cyrax Note Edited: 0116918 View Revisions
2019-07-09 14:29 Cyrax Note Added: 0117122
2019-07-09 16:43 Cyrax File Added: fpmake.pp.patch
2019-07-09 16:43 Cyrax Note Added: 0117124
2019-07-09 16:58 Cyrax Note Edited: 0117124 View Revisions
2019-07-11 21:28 Juha Manninen Relationship added related to 0035822