Recent

Author Topic: Fpcupdeluxe  (Read 812780 times)

DonAlfredo

  • Hero Member
  • *****
  • Posts: 1739
Re: Fpcupdeluxe
« Reply #2445 on: February 29, 2024, 11:30:09 am »
I would suggest to use FPC fixes (the future FPC 3.2.4).
Its in very good shape. And is not as unstable as FPC trunk.

Sidenote.
As Lazarus stable is now at 3.2, I will release (next hours/days) a new version of fpcupdeluxe that will use 3.2 as stable version for Lazarus.

BSaidus

  • Hero Member
  • *****
  • Posts: 545
  • lazarus 1.8.4 Win8.1 / cross FreeBSD
Re: Fpcupdeluxe
« Reply #2446 on: February 29, 2024, 11:53:05 am »
I would suggest to use FPC fixes (the future FPC 3.2.4).
Its in very good shape. And is not as unstable as FPC trunk.

Sidenote.
As Lazarus stable is now at 3.2, I will release (next hours/days) a new version of fpcupdeluxe that will use 3.2 as stable version for Lazarus.
I use it, I maintain 2 installation ( fpc-fixes with lazarus release & fpc trunk with lazarus release).
I need the trunk to compile for aarch64-freebsd.

Thank you.
lazarus 1.8.4 Win8.1 / cross FreeBSD
dhukmucmur vernadh!

vfclists

  • Hero Member
  • *****
  • Posts: 1013
    • HowTos Considered Harmful?
Re: Fpcupdeluxe
« Reply #2447 on: March 01, 2024, 05:15:03 pm »
Hi DonAlfredo,

If I am using fpcdeluxe, how can I specify the exact commits of the Lazarus, the FPC, and the Third Party libraries being compiled, as well as know the directories they are being saved to before the compilation starts?

My problem is I need to compile some of the older FCL/RTL libraries with a newer compiler and this means I have to do two separate checkouts of the compilers, then replace some of the directories of the newer versions  with those from the  older sources.

This means being able to handle the download process separately from the compiler phase. Can fpcdeluxe be run in separate stages to enable this?

The other option would be to prepare my own repos or download locations (eg ftp or http) with the commits and directories I want, then point fpcdeluxe to those repos and locations.

Do the dialogs enable this?

Lazarus 3.0/FPC 3.2.2

af0815

  • Hero Member
  • *****
  • Posts: 1291
Re: Fpcupdeluxe
« Reply #2448 on: March 01, 2024, 05:38:05 pm »
Open Setup+ on the rigth upper side you can set the branch and commit for fpc and Lazarus seperated. Works like charm if you want to pin something

Edit: You can also define private patches, wich are automatic applied, if you want only have a hotfix in some files
« Last Edit: March 01, 2024, 05:41:20 pm by af0815 »
regards
Andreas

vfclists

  • Hero Member
  • *****
  • Posts: 1013
    • HowTos Considered Harmful?
Re: Fpcupdeluxe
« Reply #2449 on: March 01, 2024, 08:02:24 pm »
Open Setup+ on the rigth upper side you can set the branch and commit for fpc and Lazarus seperated. Works like charm if you want to pin something

Edit: You can also define private patches, wich are automatic applied, if you want only have a hotfix in some files

Thx. I'll look into that.
Lazarus 3.0/FPC 3.2.2

ertank

  • Sr. Member
  • ****
  • Posts: 274
Re: Fpcupdeluxe
« Reply #2450 on: March 04, 2024, 07:53:40 am »
Hello,

Using v2.4.0d build 492 on Raspberry Pi 4 64 bit (aarch64)
Trying to build fpc - trunk and lazarus - trunk and I get error during lazarus ide build as follows
Code: [Select]
Error: /home/pi/fpcupdeluxe/fpc/bin/aarch64-linux/ppca64 can't be executed, error message: Failed to execute "/home/pi/fpcupdeluxe/fpc/bin/aarch64-linux/ppca64", error code: -9
Error: (lazarus) Compile package ChmHelpPkg 0.2.1: stopped with exit code 1
Error: (lazarus) Compile package SynEditDsgn 1.0: terminated
Error: (lazarus) Compile package IdeDebugger 0.0.1: terminated
Error: (lazarus) Compile package DateTimeCtrlsDsgn 1.5.1: terminated
Error: (lazarus) [TLazPackageGraph.CompileRequiredPackages] "Exit code 1"
Error: (lazbuild) Building IDE: Compile AutoInstall Packages failed

I don't know what is -9 error code mean. I checked and mentined file exists, execute just fine. So, error must be something else.
Code: [Select]
pi@raspberrypi:~ $ /home/pi/fpcupdeluxe/fpc/bin/aarch64-linux/ppca64
Free Pascal Compiler version 3.3.1-15328-g1ab46c909a-dirty [2024/03/03] for aarch64
Copyright (c) 1993-2024 by Florian Klaempfl and others
/home/pi/fpcupdeluxe/fpc/bin/aarch64-linux/ppca64 [options] <inputfile> [options]
 Put + after a boolean switch option to enable it, - to disable it.
  @<x>   Read compiler options from <x> in addition to the default fpc.cfg
  -a     The compiler does not delete the generated assembler file, automatically switches to external assembler writer
      -a5        Don't generate Big Obj COFF files for GNU Binutils older than 2.25 (Windows, NativeNT)
      -al        List sourcecode lines in assembler file
      -an        List node info in assembler file (-dEXTDEBUG compiler)
      -ao        Add an extra option to external assembler call (ignored for internal)
      -ap        Use pipes instead of creating temporary assembler files
      -ar        List register allocation/release info in assembler file
      -aR        List RTTI info in assembler file
      -at        List temp allocation/release info in assembler file
  -A<x>  Output format:
      -Adefault  Use default assembler
      -Aas       Assemble using GNU AS
      -Aas-clang Assemble using clang for other targets
*** press enter ***

I cannot be sure if this is a fpcupdeluxe issue or something else.

Any help is appreciated.

Thanks & Regards,
Ertan

DonAlfredo

  • Hero Member
  • *****
  • Posts: 1739
Re: Fpcupdeluxe
« Reply #2451 on: March 04, 2024, 08:00:08 am »
This is not an fpcupdeluxe issue.
FPC trunk is not working very well at the moment when targeting aarch64. Fixes are pending. Might be solved in the next few days.
However, for the moment, you might try to add -O1 when compiling FPC, as this issue might be caused by a wrong optimization.

ertank

  • Sr. Member
  • ****
  • Posts: 274
Re: Fpcupdeluxe
« Reply #2452 on: March 04, 2024, 08:27:57 am »
Thanks.
I didn't used compiler overrides before. Is the attached setting will be enough?

DonAlfredo

  • Hero Member
  • *****
  • Posts: 1739
Re: Fpcupdeluxe
« Reply #2453 on: March 04, 2024, 09:00:39 am »
Not correct. You are native compiling, not cross-compiling.
Just put -O1 into FPC options.

ertank

  • Sr. Member
  • ****
  • Posts: 274
Re: Fpcupdeluxe
« Reply #2454 on: March 04, 2024, 11:32:29 am »
I set FPC option as -O1 I still see below log lines passing through and I am not sure if this is OK.
I mean there is still -O2 in ppc1 parameters.
Code: [Select]
/home/pi/fpcupdeluxe/fpcsrc/compiler/ppc1 -Ur -Ur -Xs -O2 -n -Fi../inc -Fi../aarch64 -Fi../unix -Fiaarch64 -FE. -FU/home/pi/fpcupdeluxe/fpcsrc/rtl/units/aarch64-linux -Sg -vw-n-h-l-d-u-t-p-c- -O1 -dREVINC -DD2024/02/20 -daarch64 -dRELEASE ../unix/unixcp.pp
/home/pi/fpcupdeluxe/fpcsrc/compiler/ppc1 -Ur -Ur -Xs -O2 -n -Fi../inc -Fi../aarch64 -Fi../unix -Fiaarch64 -FE. -FU/home/pi/fpcupdeluxe/fpcsrc/rtl/units/aarch64-linux -Sg -vw-n-h-l-d-u-t-p-c- -O1 -dREVINC -DD2024/02/20 -daarch64 -dRELEASE ../inc/getopts.pp
/home/pi/fpcupdeluxe/fpcsrc/compiler/ppc1 -Ur -Ur -Xs -O2 -n -Fi../inc -Fi../aarch64 -Fi../unix -Fiaarch64 -FE. -FU/home/pi/fpcupdeluxe/fpcsrc/rtl/units/aarch64-linux -Sg -vw-n-h-l-d-u-t-p-c- -O1 -dREVINC -DD2024/02/20 -daarch64 -dRELEASE ../unix/dl.pp
/home/pi/fpcupdeluxe/fpcsrc/compiler/ppc1 -Ur -Ur -Xs -O2 -n -Fi../inc -Fi../aarch64 -Fi../unix -Fiaarch64 -FE. -FU/home/pi/fpcupdeluxe/fpcsrc/rtl/units/aarch64-linux -Sg -vw-n-h-l-d-u-t-p-c- -O1 -dREVINC -DD2024/02/20 -daarch64 -dRELEASE ../inc/dynlibs.pas
/home/pi/fpcupdeluxe/fpcsrc/compiler/ppc1 -Ur -Ur -Xs -O2 -n -Fi../inc -Fi../aarch64 -Fi../unix -Fiaarch64 -FE. -FU/home/pi/fpcupdeluxe/fpcsrc/rtl/units/aarch64-linux -Sg -vw-n-h-l-d-u-t-p-c- -O1 -dREVINC -DD2024/02/20 -daarch64 -dRELEASE ../objpas/types.pp
/home/pi/fpcupdeluxe/fpcsrc/compiler/ppc1 -Ur -Ur -Xs -O2 -n -Fi../inc -Fi../aarch64 -Fi../unix -Fiaarch64 -FE. -FU/home/pi/fpcupdeluxe/fpcsrc/rtl/units/aarch64-linux -Sg -vw-n-h-l-d-u-t-p-c- -O1 -dREVINC -DD2024/02/20 -daarch64 -dRELEASE ../objpas/fpwidestring.pp
/home/pi/fpcupdeluxe/fpcsrc/compiler/ppc1 -Ur -Ur -Xs -O2 -n -Fi../inc -Fi../aarch64 -Fi../unix -Fiaarch64 -FE. -FU/home/pi/fpcupdeluxe/fpcsrc/rtl/units/aarch64-linux -Sg -vw-n-h-l-d-u-t-p-c- -O1 -dREVINC -DD2024/02/20 -daarch64 -dRELEASE ../unix/cthreads.pp
/home/pi/fpcupdeluxe/fpcsrc/compiler/ppc1 -Ur -Ur -Xs -O2 -n -Fi../inc -Fi../aarch64 -Fi../unix -Fiaarch64 -FE. -FU/home/pi/fpcupdeluxe/fpcsrc/rtl/units/aarch64-linux -Sg -vw-n-h-l-d-u-t-p-c- -O1 -dREVINC -DD2024/02/20 -daarch64 -dRELEASE ../objpas/fgl.pp
/home/pi/fpcupdeluxe/fpcsrc/compiler/ppc1 -Ur -Ur -Xs -O2 -n -Fi../inc -Fi../aarch64 -Fi../unix -Fiaarch64 -FE. -FU/home/pi/fpcupdeluxe/fpcsrc/rtl/units/aarch64-linux -Sg -vw-n-h-l-d-u-t-p-c- -O1 -dREVINC -DD2024/02/20 -daarch64 -dRELEASE -Fi../objpas/classes ../unix/classes.pp
/home/pi/fpcupdeluxe/fpcsrc/compiler/ppc1 -Ur -Ur -Xs -O2 -n -Fi../inc -Fi../aarch64 -Fi../unix -Fiaarch64 -FE. -FU/home/pi/fpcupdeluxe/fpcsrc/rtl/units/aarch64-linux -Sg -vw-n-h-l-d-u-t-p-c- -O1 -dREVINC -DD2024/02/20 -daarch64 -dRELEASE ../unix/cwstring.pp
/home/pi/fpcupdeluxe/fpcsrc/compiler/ppc1 -Ur -Ur -Xs -O2 -n -Fi../inc -Fi../aarch64 -Fi../unix -Fiaarch64 -FE. -FU/home/pi/fpcupdeluxe/fpcsrc/rtl/units/aarch64-linux -Sg -vw-n-h-l-d-u-t-p-c- -O1 -dREVINC -DD2024/02/20 -daarch64 -dRELEASE fpcylix.pp
/home/pi/fpcupdeluxe/fpcsrc/compiler/ppc1 -Ur -Ur -Xs -O2 -n -Fi../inc -Fi../aarch64 -Fi../unix -Fiaarch64 -FE. -FU/home/pi/fpcupdeluxe/fpcsrc/rtl/units/aarch64-linux -Sg -vw-n-h-l-d-u-t-p-c- -O1 -dREVINC -DD2024/02/20 -daarch64 -dRELEASE ../inc/softfpu.pp
/home/pi/fpcupdeluxe/fpcsrc/compiler/ppc1 -Ur -Ur -Xs -O2 -n -Fi../inc -Fi../aarch64 -Fi../unix -Fiaarch64 -FE. -FU/home/pi/fpcupdeluxe/fpcsrc/rtl/units/aarch64-linux -Sg -vw-n-h-l-d-u-t-p-c- -O1 -dREVINC -DD2024/02/20 -daarch64 -dRELEASE ../inc/sfpux80.pp
/home/pi/fpcupdeluxe/fpcsrc/compiler/ppc1 -Ur -Ur -Xs -O2 -n -Fi../inc -Fi../aarch64 -Fi../unix -Fiaarch64 -FE. -FU/home/pi/fpcupdeluxe/fpcsrc/rtl/units/aarch64-linux -Sg -vw-n-h-l-d-u-t-p-c- -O1 -dREVINC -DD2024/02/20 -daarch64 -dRELEASE ../inc/ufloatx80.pp
/home/pi/fpcupdeluxe/fpcsrc/compiler/ppc1 -Ur -Ur -Xs -O2 -n -Fi../inc -Fi../aarch64 -Fi../unix -Fiaarch64 -FE. -FU/home/pi/fpcupdeluxe/fpcsrc/rtl/units/aarch64-linux -Sg -vw-n-h-l-d-u-t-p-c- -O1 -dREVINC -DD2024/02/20 -daarch64 -dRELEASE ../inc/sfpu128.pp

ertank

  • Sr. Member
  • ****
  • Posts: 274
Re: Fpcupdeluxe
« Reply #2455 on: March 04, 2024, 01:05:45 pm »
I could complete both fpc and lazarus using -O1 for fpc and using fixes for both fpc and lazarus
Thank you for your support.

TRon

  • Hero Member
  • *****
  • Posts: 2495
Re: Fpcupdeluxe
« Reply #2456 on: March 08, 2024, 04:51:30 am »
If I am using fpcdeluxe, how can I specify the exact commits of the Lazarus, the FPC, and the Third Party libraries being compiled, as well as know the directories they are being saved to before the compilation starts?
I have exactly the same question with regards to the bolded items. Why ? Because I can manually build Lazarus 3.2 with a particular compiler revision but FPCUp fails when trying to do the same thing:

Code: [Select]
(3104) Compiling tadatatools.pas
/media/ramdisk/install/lazarus/components/tachart/tadatatools.pas(282,11) Error: (5038) Identifier idents no member "FGraphPos"
/media/ramdisk/install/lazarus/components/tachart/tadatatools.pas(283,11) Error: (5038) Identifier idents no member "FIndex"
/media/ramdisk/install/lazarus/components/tachart/tadatatools.pas(287,9) Error: (5038) Identifier idents no member "FSeries"
/media/ramdisk/install/lazarus/components/tachart/tadatatools.pas(289,11) Error: (5038) Identifier idents no member "SetGraphPos"
/media/ramdisk/install/lazarus/components/tachart/tadatatools.pas(329,14) Error: (5038) Identifier idents no member "FSeries"
/media/ramdisk/install/lazarus/components/tachart/tadatatools.pas(431) Fatal: (10026) There were 5 errors compiling module, stopping

So, it seems there is something deviating from the standard makefile(s).

edit: Found It ! Manipulating ini files without any guide is the way to go ... let's see if we manage to crash things  :D
edit2: Why using ini files if you don't use them (or at least not honor the settings) ? Ergo my question still stands.
« Last Edit: March 08, 2024, 08:14:03 am by TRon »

BSaidus

  • Hero Member
  • *****
  • Posts: 545
  • lazarus 1.8.4 Win8.1 / cross FreeBSD
Re: Fpcupdeluxe
« Reply #2457 on: March 13, 2024, 10:49:04 pm »
Hello,
What a strange error from this build: fpc-trunk, lazarus 3.2 release.
Code: Pascal  [Select][+][-]
  1. make[1]: Entering directory `E:/fpclz/lzfpc-tr/331/lazarus/lcl'
  2. E:/fpclz/lzfpc-tr/331/fpc/bin/i386-win32/rm.exe -f units/i386-win32/alllclunits.ppu
  3. E:/fpclz/lzfpc-tr/331/fpc/bin/i386-win32/gmkdir.exe -p units/i386-win32
  4. E:/fpclz/lzfpc-tr/331/fpc/bin/i386-win32/fpc.exe -gl -Sic -Fu../packager/units/i386-win32 -Fu../components/lazutils/lib/i386-win32 -Fu../components/freetype/lib/i386-win32 -Fu. -Fuforms -Fuwidgetset -FuE:/fpclz/lzfpc-tr/331/fpcsrc/rtl -Fiinclude -FE. -FUunits/i386-win32 -vw-n-h-l-d-u-t-p-c- -g -gl -di386 alllclunits.pp
  5. Free Pascal Compiler version 3.3.1-15406-g6e03b24701 [2024/03/13] for i386
  6. Copyright (c) 1993-2024 by Florian Klaempfl and others
  7. Target OS: Win32 for i386
  8. Compiling alllclunits.pp
  9. Compiling dialogres.pas
  10. Compiling lcltype.pp
  11. Compiling graphics.pp
  12. Compiling themes.pas
  13. Compiling controls.pp
  14. Compiling imglist.pp
  15. Compiling interfacebase.pp
  16. Compiling lclintf.pas
  17. Compiling lclproc.pas
  18. Compiling lclexceptionstacktrace.pas
  19. Compiling forms.pp
  20. Compiling jsonpropstorage.pas
  21. Compiling industrialbase.pp
  22. Compiling lclplatformdef.pas
  23. Compiling .\widgetset\wslazdeviceapis.pas
  24. Compiling lazdeviceapis.pas
  25. Compiling .\widgetset\wslclclasses.pp
  26. Compiling .\widgetset\wscontrols.pp
  27. Compiling .\widgetset\wsfactory.pas
  28. Compiling lcltaskdialog.pas
  29. Compiling lclstrconsts.pas
  30. Writing Resource String Table file: lclstrconsts.rsj
  31. Compiling lresources.pp
  32. Compiling menus.pp
  33. Compiling stdctrls.pp
  34. Compiling extctrls.pp
  35. Compiling buttons.pp
  36. Compiling groupededit.pp
  37. Compiling lmessages.pp
  38. Compiling dialogs.pp
  39. Compiling maskedit.pp
  40. Compiling lcltranslator.pas
  41. Compiling .\forms\calcform.pas
  42. Compiling clipbrd.pp
  43. Compiling .\widgetset\wsextdlgs.pp
  44. Compiling customdrawn_mac.pas
  45. Compiling customdrawndrawers.pas
  46. Compiling customdrawn_common.pas
  47. Compiling dbextctrls.pp
  48. Compiling dbctrls.pp
  49. Compiling editbtn.pas
  50. Compiling .\forms\calendarpopup.pas
  51. Compiling calendar.pp
  52. Compiling comboex.pas
  53. Compiling comctrls.pp
  54. Compiling graphutil.pp
  55. Compiling extdlgs.pas
  56. Compiling .\forms\timepopup.pas
  57. Compiling arrow.pp
  58. Compiling customdrawn_android.pas
  59. Compiling intfgraphics.pas
  60. Compiling customdrawn_winxp.pas
  61. Compiling lazfreetypeintfdrawer.pas
  62.  
  63. PPU Loading E:\fpclz\lzfpc-tr\331\lazarus\components\freetype\lib\i386-win32\ttraster.ppu
  64. PPU Source: ttraster.pas not found
  65. PPU Source: ttconfig.inc not available
  66. PPU Source: ttraster_sweep.inc not available
  67. Recompiling TTRaster, checksum changed for E:\fpclz\lzfpc-tr\331\lazarus\components\freetype\lib\i386-win32\ttprofile.ppu
  68. Fatal: Can't find unit TTRaster used by EasyLazFreeType
  69. Fatal: Compilation aborted
  70. Error: E:\fpclz\lzfpc-tr\331\fpc\bin\i386-win32\ppc386.exe returned an error exitcode
  71. make[1]: *** [alllclunits.ppu] Error 1
  72. make[1]: Leaving directory `E:/fpclz/lzfpc-tr/331/lazarus/lcl'
  73. make: *** [lazbuild] Error 2
  74. make: Leaving directory `E:/fpclz/lzfpc-tr/331/lazarus'
  75. fpcupdeluxe: ERROR: Lazarus Native Installer (BuildModuleCustom: Lazbuild): make.exe returned exit status #2.
  76.  
  77.  
  78. ERROR: Fpcupdeluxe fatal error !
  79. Sequencer (UserIDE): Failure running fpcupdeluxe: error executing sequence UserIDE
  80. Sequencer (Lazarus): Failure running fpcupdeluxe: error executing sequence Lazarus
  81. Sequencer (Only): Failure running fpcupdeluxe: error executing sequence Only
  82.  
« Last Edit: March 13, 2024, 10:50:50 pm by BSaidus »
lazarus 1.8.4 Win8.1 / cross FreeBSD
dhukmucmur vernadh!

TRon

  • Hero Member
  • *****
  • Posts: 2495
Re: Fpcupdeluxe
« Reply #2458 on: March 14, 2024, 12:06:54 am »
What a strange error from this build: fpc-trunk, lazarus 3.2 release.
Yes, the error appears when building Lazarus 3.2 release with FPC trunk. I have the same thing on/for Linux x86-64. and fwiw it is not related to FPCUpDeluxe  :)
« Last Edit: March 14, 2024, 12:21:28 am by TRon »

parcel

  • Full Member
  • ***
  • Posts: 143
Re: Fpcupdeluxe
« Reply #2459 on: March 14, 2024, 04:57:12 am »
Use revision 277a3be9 for FPC trunk, it's lastest stable FPC trunk. i386-win32 implemention checksum problem is introduced by !594, it doesn't solve yet.
DEBUG_UNIT_CRC_CHANGES define on fpc compiling, you can observe details.
« Last Edit: March 14, 2024, 05:00:20 am by parcel »

 

TinyPortal © 2005-2018