[fpc-devel] ppcrossx64 build on macOS darwin with ppca64 is failing
J. Gareth "Kit" Moreton
gareth at moreton-family.com
Tue Sep 1 04:16:33 CEST 2026
So the Internal Error is in a case-block where it tries to write a
real-typed constant to an assembly dump (which may be passed into an
external assembler), but the type is not recognised/supported. With
that in mind it might be due to my recent Currency changes. I've got my
work cut out!
Kit
On 31/08/2026 21:57, David Jenkins via fpc-devel wrote:
> That error was generated when I tried building ppcross64x from my
> bootstrap ppca64-3.2.2 compiler.
>
> If I first use ppca64-3.2.2 to build a trunk ppca64-3.3.1 and then use
> that to build ppcrossx64, I do get a ppcrossx64 built but then when it
> tries to build the rtl it fails with
>
> /Users/djenkins/Source/BCTrunk/Lazarus/fpc/compiler/ppcrossx64
> -dFPC_USE_LIBC -Px86_64 -XX -CX -Ur -Xs -O2 -n -Fi../inc -Fi../x86_64
> -Fi../unix -Fi../bsd -Fi../bsd/x86_64 -Fi../darwin/x86_64 -FE.
> -FU/Users/djenkins/Source/BCTrunk/Lazarus/fpc/rtl/units/x86_64-darwin
> -dBC_FPC_BUILD -n
> @/Users/djenkins/Source/BCTrunk/Lazarus/fpc/../fpc.cfg -dlegacysocket
> -dLIBC_OLDERRNO -dx86_64 -dRELEASE -Us -Sg ../bsd/system.pp
> genmath.inc(606,5) Fatal: Internal error 2014051001
> Fatal: Compilation aborted
> make[5]: *** [system.ppu] Error 1
> make[4]: *** [fpc_smart] Error 2
> make[3]: *** [darwin_smart] Error 2
> make[2]: *** [rtl_smart] Error 2
> make[1]: *** [build-stamp.x86_64-darwin] Error 2
> make: *** [crossinstall] Error 2
> /Applications/Xcode-26.6.app/Contents/Developer/usr/bin/make -C
> compiler distclean
> <stdin>:76571:1: error: assembler local symbol 'Ld23' not defined
>
> ^
> <stdin>:76571:1: error: assembler local symbol 'Ld8' not defined
>
> Which is different than the 200308299 error you saw but the above was
> with -O2.
>
> I'll create a gitlab bug report.
>
>
>
> On 8/31/26 1:04 PM, Karoly Balogh via fpc-devel wrote:
>> Hi,
>>
>> On Mon, 31 Aug 2026, David Jenkins via fpc-devel wrote:
>>
>>> I'm trying to build ppcrossx64 on my macOS darwin Tahoe apple
>>> silicon machine
>>> with a ppca64 built from fpc trunk and Xcode 26.6 and no Rosetta
>>> running.
>>>
>>> Should I expect that to succeed?
>>
>> Yes. Or at least fail with a meaningful error message, and not with what
>> you got.
>>
>>> I am getting the following errors when pp.pas is being compiled:
>>>
>>> /Users/djenkins/Source/BCTrunk/Lazarus/fpc/compiler/ppc -Ur -Xs -O2 -n
>>> -Fux86_64 -Fusystems
>>> -Fu/Users/djenkins/Source/BCTrunk/Lazarus/fpc/rtl/units/aarch64-darwin
>>> -Fix86_64 -FEx86_64/bin/aarch64-darwin -FUx86_64/units/aarch64-darwin
>>> -XR/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk -dRELEASE
>>> -dBC_FPC_BUILD -n
>>> @/Users/djenkins/Source/BCTrunk/Lazarus/fpc/../fpc.cfg
>>> -dlegacysocket -dLIBC_OLDERRNO -dx86_64 -Fux86 -Fix86 -Sew
>>> -o/Users/djenkins/Source/BCTrunk/Lazarus/fpc/compiler/ppcrossx64 pp.pas
>>> <stdin>:5227:9: error: expected compatible register or logical
>>> immediate
>>> mov x1,w23
>>> ^
>>> <stdin>:5241:9: error: expected compatible register or logical
>>> immediate
>>> mov x1,w23
>>>
>>>
>>> I did some searching in the gitlab issues and didn't see anything
>>> related.
>>>
>>> Happy to create a bug report in gitlab if needed.
>>
>> Please do so. This looks like a genuine bug in the ARM64
>> codegenerator, I
>> managed to reproduce it. Without the optimizer enabled (-O-
>> argument), it
>> actually runs into an internal error 200308299.
>>
>> Charlie
>> _______________________________________________
>> fpc-devel maillist - fpc-devel at lists.freepascal.org
>> https://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel
>
>
> _______________________________________________
> fpc-devel maillist - fpc-devel at lists.freepascal.org
> https://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel
--
This email has been checked for viruses by Avast antivirus software.
www.avast.com
More information about the fpc-devel
mailing list