[fpc-devel] Can someone confir 2.7.2 cross arm is currently build-able

Michel Catudal mcatudal at comcast.net
Mon Sep 2 17:32:26 CEST 2013


Le 2013-09-01 10:07, Sven Barth a écrit :
> On 01.09.2013 05:02, Michel Catudal wrote:
>> Le 2013-08-31 16:47, Sven Barth a écrit :
>> On Linux it hasn't compiled since May. It crashes before the RTL stuff. The compiler itself does compile.
>>
>
> An error message would be nice.
>
> If the error is that "bx r14" is not supported, then I've fixed this now in revision 25393.
>
> Regards,
> Sven
>
What we get is a bizarre error which gives little information as to why it barfs
Compilation works perfectly if using snapshots from may. That is what I have on my funtoo odroid right now.

michel ~ # fpc
Free Pascal Compiler version 2.7.1 [2013/05/18] for arm
Copyright (c) 1993-2013 by Florian Klaempfl and others


Here are the last messages of the compilation of the latest snapshots as of Sept 2nd. The result has been identical since may. Someone introduced a deadly bug that kills compilation on ARM devices. This was done on an Odroid U2.

The last successfull compile I had was using a fpc.zip  that my funtoo had in a cache. So I think that the last non broken fpc was around the 15th of may or slightly before that. It would be nice to have better error message that just an Access violation.
There is no way to figure out what happen when the error comes from the OS. Can't the compiler traps this kind of stuff and get us more informative clue as to what happened?
The crash seems to be caused by the UnicodeString stuff, if that is the case why the Warning instead of an error?



/bin/rm -f fpcmade.arm-linux Package.fpc ./ppas.sh script.res link.res 
/bin/rm -f *.s *_ppas.sh
make[6] : on quitte le répertoire « /var/tmp/portage/dev-lang/fpc-2.7.1-r2/work/fpcbuild/fpcsrc/rtl/linux »
make[5] : on quitte le répertoire « /var/tmp/portage/dev-lang/fpc-2.7.1-r2/work/fpcbuild/fpcsrc/rtl »
make -C /var/tmp/portage/dev-lang/fpc-2.7.1-r2/work/fpcbuild/fpcsrc/rtl 'OPT=-dFPC_ARMHF  ' all
make[5] : on entre dans le répertoire « /var/tmp/portage/dev-lang/fpc-2.7.1-r2/work/fpcbuild/fpcsrc/rtl »
make -C linux all
make[6] : on entre dans le répertoire « /var/tmp/portage/dev-lang/fpc-2.7.1-r2/work/fpcbuild/fpcsrc/rtl/linux »
as  -o /var/tmp/portage/dev-lang/fpc-2.7.1-r2/work/fpcbuild/fpcsrc/rtl/units/arm-linux/prt0.o arm/prt0.as
as   -o /var/tmp/portage/dev-lang/fpc-2.7.1-r2/work/fpcbuild/fpcsrc/rtl/units/arm-linux/dllprt0.o arm/dllprt0.as
as  -o /var/tmp/portage/dev-lang/fpc-2.7.1-r2/work/fpcbuild/fpcsrc/rtl/units/arm-linux/cprt0.o arm/cprt0.as
as  -o /var/tmp/portage/dev-lang/fpc-2.7.1-r2/work/fpcbuild/fpcsrc/rtl/units/arm-linux/gprt0.o arm/gprt0.as
as  -o /var/tmp/portage/dev-lang/fpc-2.7.1-r2/work/fpcbuild/fpcsrc/rtl/units/arm-linux/ucprt0.o arm/ucprt0.as
/var/tmp/portage/dev-lang/fpc-2.7.1-r2/work/fpcbuild/fpcsrc/compiler/ppc1 -Ur -Ur -O2 -n -Fi../inc -Fi../arm -Fi../unix -Fiarm -FE. -FU/var/tmp/portage/dev-lang/fpc-2.7.1-r2/work/fpcbuild/fpcsrc/rtl/units/arm-linux -dFPC_ARMHF   -darm -dRELEASE -Us -Sg
system.pp
text.inc(2082,14) Warning: Implicit string type conversion from "AnsiString" to "UnicodeString"
text.inc(2301,53) Warning: Implicit string type conversion with potential data loss from "UnicodeString" to "AnsiString"
An unhandled exception occurred at $0000923C:
EAccessViolation: Access violation
  $0000923C

An unhandled exception occurred at $0000923C:
EAccessViolation: Access violation
  $0000923C

make[6]: *** [system.ppu] Erreur 217
make[6] : on quitte le répertoire « /var/tmp/portage/dev-lang/fpc-2.7.1-r2/work/fpcbuild/fpcsrc/rtl/linux »
make[5]: *** [linux_all] Erreur 2
make[5] : on quitte le répertoire « /var/tmp/portage/dev-lang/fpc-2.7.1-r2/work/fpcbuild/fpcsrc/rtl »
make[4]: *** [rtl] Erreur 2
make[4] : on quitte le répertoire « /var/tmp/portage/dev-lang/fpc-2.7.1-r2/work/fpcbuild/fpcsrc/compiler »
make[3]: *** [next] Erreur 2
make[3] : on quitte le répertoire « /var/tmp/portage/dev-lang/fpc-2.7.1-r2/work/fpcbuild/fpcsrc/compiler »
make[2]: *** [ppc2] Erreur 2
make[2] : on quitte le répertoire « /var/tmp/portage/dev-lang/fpc-2.7.1-r2/work/fpcbuild/fpcsrc/compiler »
make[1]: *** [cycle] Erreur 2
make[1] : on quitte le répertoire « /var/tmp/portage/dev-lang/fpc-2.7.1-r2/work/fpcbuild/fpcsrc/compiler »
make: *** [compiler_cycle] Erreur 2
 * ERROR: dev-lang/fpc-2.7.1-r2 failed (compile phase):
 *   emake failed


-- 
For Linux Software visit
http://home.comcast.net/~mcatudal




More information about the fpc-devel mailing list