[Lazarus] Lazarus 2.2.6 on Raspberry Pi5B, error during build
Bo Berglund
bo.berglund at gmail.com
Sun Dec 10 17:51:23 CET 2023
I am setting up my new RPi3B with 64 bit Pi-OS Bookworm and have now come to
FreePascal/Lazarus.
Freepascal is built from sources (trunk of 3.2.3) using a seed compiler 3.2.2
earlier obtained as an apt install on an RPi4B also running Pi-OS 64 bit
Bookworm.
On this new system I want to build from sources to get everything inside my
$HOME environment. That is why I did not install fpc 3.2.2 via apt.
Fpc built just fine with these sources so that is how I got 3.2.3.
Note that I am using fpc 3.2.3 head revision on this system since no other
version seems to be possible to build on the 64 bit Pi-OS.
But that version builds without problems.
So I am using the self-compiled fpc 3.2.3 to build Lazarus 2.2.6 and it fails
during build with the following exit message (only end of output shown):
make bigide....
(9009) Assembling translations
(3104) Compiling uitypes.pas
/home/bosse/devtools/lazarus/2.2.6/components/lazutils/uitypes.pas(105,14)
Error: (3285) Expected another 2 array elements
/home/bosse/devtools/lazarus/2.2.6/components/lazutils/uitypes.pas(93,58) Fatal:
(10026) There were 1 errors compiling module, stopping
Fatal: (1018) Compilation aborted
make[1]: *** [Makefile:3394: lazutils.ppu] Error 1
make[1]: Leaving directory
'/home/bosse/devtools/lazarus/2.2.6/components/lazutils'
make: *** [Makefile:3802: lazutils] Error 2
This is how the file looks like at the location indicated:
62 interface
63
64 type
65 // Message dialog related
66 TMsgDlgType = (mtWarning, mtError, mtInformation, mtConfirmation,
mtCustom);
67 TMsgDlgBtn = (mbYes, mbNo, mbOK, mbCancel, mbAbort, mbRetry, mbIgnore,
68 mbAll, mbNoToAll, mbYesToAll, mbHelp, mbClose);
69 TMsgDlgButtons = set of TMsgDlgBtn;
70
71 // ModalResult
72 TModalResult = low(Integer)..high(Integer);
73 PModalResult = ^TModalResult;
74
75 const
76 // Used for ModalResult
77 mrNone = 0;
78 mrOK = mrNone + 1;
79 mrCancel = mrNone + 2;
80 mrAbort = mrNone + 3;
81 mrRetry = mrNone + 4;
82 mrIgnore = mrNone + 5;
83 mrYes = mrNone + 6;
84 mrNo = mrNone + 7;
85 mrAll = mrNone + 8;
86 mrNoToAll = mrNone + 9;
87 mrYesToAll = mrNone + 10;
88 mrClose = mrNone + 11;
89 mrLast = mrClose;
90 {$ENDIF}
91
92 // String representation of ModalResult values
93 ModalResultStr: array[mrNone..mrLast] of shortstring = (
94 'mrNone',
95 'mrOk',
96 'mrCancel',
97 'mrAbort',
98 'mrRetry',
99 'mrIgnore',
100 'mrYes',
101 'mrNo',
102 'mrAll',
103 'mrNoToAll',
104 'mrYesToAll',
105 'mrClose');
106
107
To me it seems like the number of elements is not in error...
What can cause this failure and how can I solve it?
--
Bo Berglund
Developer in Sweden
More information about the lazarus
mailing list