Recent

Author Topic: fpcupdeluxe and the Pico  (Read 5965 times)

dbannon

  • Hero Member
  • *****
  • Posts: 2846
    • tomboy-ng, a rewrite of the classic Tomboy
Re: fpcupdeluxe and the Pico
« Reply #15 on: March 07, 2024, 12:24:14 am »
Quote
For Lazarus, why not a stable release such as 3.0 or 3.2 ?
It is guessing from my part (I usually do not use Lazarus) but most probably because new features of the compiler are not supported by stable Lazarus (it doe  not have notion of newly additions to the compiler). f.e. certain targets can't even be build by Lazarus stable (simply because the target was added in trunk compiler).
Its not often a whole new target is added. I have a Lazarus 2.0.10 install, it has full support for arm and ARMv6m. Generally, most of Lazarus is target agnostic, My 2.0.10 has a lot more bugs, poor Help, buggy code tools but if you are used to those minor things, would work fine.

Quote
You can only be sure by testing and in case of issues please report them so that they can be fixed.
I guess you missed my comments about testing. Sigh ....
I would rather see fpcupdeluxe ship with a tested combination of products. At present, fpcupdeluxe, for Pico, points to main for both fpc and lazarus. Every time a  merge happens in either, fpcupdeluxe gets a new, untested product to install. Given there is no benefit in tracking main in either, choosing know good snapshots would, IMHO make more sense. But its quite unreasonable to ask DonAlfredo to do that testing. I suggested, in the atypical case of Pico (and probably similar) he should request users of Pico to run some tests for him.



Davo
Lazarus 3, Linux (and reluctantly Win10/11, OSX Monterey)
My Project - https://github.com/tomboy-notes/tomboy-ng and my github - https://github.com/davidbannon

TRon

  • Hero Member
  • *****
  • Posts: 2647
Re: fpcupdeluxe and the Pico
« Reply #16 on: March 07, 2024, 12:53:59 am »
I guess you missed my comments about testing. Sigh ....
I did so apologies.

Quote
I would rather see fpcupdeluxe ship with a tested combination of products.
That is not the aim of/for FPCUpDeluxe. It is a tool that either downloads and installs optional a) a released compiler version b) a released lazarus version or c) fixes for one or both of them d) trunk (main as you name it) for either one of them and d) any cross-compiler .

Additional FPCUpDeluxe is able to bootstrap that for you and provide all the necessary (cross)tools and startup code for selected (cross)-targets.

Quote
At present, fpcupdeluxe, for Pico, points to main for both fpc and lazarus. Every time a  merge happens in either, fpcupdeluxe gets a new, untested product to install. Given there is no benefit in tracking main in either, choosing know good snapshots would, IMHO make more sense. But its quite unreasonable to ask DonAlfredo to do that testing. I suggested, in the atypical case of Pico (and probably similar) he should request users of Pico to run some tests for him.
Yes, that comes with the territory. FPCUpDeluxe allows you to fill in hash codes for revisions in trunk (either FPC or Lazarus) so that we the users are capable of selecting the source from any commit that we want to use. Same as you can do so manually with git.

So that leave us the users to find a few hashes that work for us, in particular for the pico target if you wish.

There really is no point for Don Alfredo to do that for us (I get it that you want to offer your help with that) as there are literally dozens of targets to keep track off (that is practically work for ages).

So build FPC and Lazarus finding a hash that works for you and write it down somewhere for later use (wiki comes to mind). But do realize that whenever a stable release is able to target your preferred hardware there is hardly any point in upgrading unless the rtl for that target changed or was fixed (or in case you really want to use that new cool feature that was introduced in trunk).

As far as my knowledge goes that means stick to a stable Lazarus release and use (some version of) FPC trunk (and which version that is, is something that we can determine by its hash). And that is even if you want to rely on Lazarus (I myself do not use Lazarus for development). I personally have no time figuring out which version of Lazarus and FPC work together (or not), for me it is either it works or it doesn't and on occasion I let my build-script try and build a version of FPC trunk and Lazarus trunk (and in case it works I then determine whether or not I want to keep the produced archives).

cdbc

  • Hero Member
  • *****
  • Posts: 1157
    • http://www.cdbc.dk
Re: fpcupdeluxe and the Pico
« Reply #17 on: March 07, 2024, 02:21:20 am »
Hi Davo
I dunno if this could be of use to you, but I'm running a fairly recent trunk on PCLinuxOS, installed with FpcUpDeluxe and it goes like stink, literally NO problems & fast. You're talking about a hash, could this be it?
Quote
Free Pascal Compiler version 3.3.1-15019-g664f8fc2ba-dirty [2024/01/28] for x86_64
Copyright (c) 1993-2024 by Florian Klaempfl and others
Target OS: Linux for x86-64
Dunno 'bout 'Pico' but if it's a stable working compiler you're after...
Regards Benny
If it ain't broke, don't fix it ;)
PCLinuxOS(rolling release) 64bit -> KDE5 -> FPC 3.2.2 -> Lazarus 2.2.6 up until Jan 2024 from then on it's: KDE5/QT5 -> FPC 3.3.1 -> Lazarus 3.0

TRon

  • Hero Member
  • *****
  • Posts: 2647
Re: fpcupdeluxe and the Pico
« Reply #18 on: March 07, 2024, 02:37:35 am »
Dunno 'bout 'Pico' but if it's a stable working compiler you're after...
At the least after november 11th 2023 (because that was the date that support for pico from MiR was added to trunk) but the later the better (and if I understood dbannon correctly then a FPC that is also able to work with a stable Lazarus release)

cdbc

  • Hero Member
  • *****
  • Posts: 1157
    • http://www.cdbc.dk
Re: fpcupdeluxe and the Pico
« Reply #19 on: March 07, 2024, 02:57:58 am »
Hi TRon
Does 3.0 count as a stable Laz release?  ;)
Regards Benny
If it ain't broke, don't fix it ;)
PCLinuxOS(rolling release) 64bit -> KDE5 -> FPC 3.2.2 -> Lazarus 2.2.6 up until Jan 2024 from then on it's: KDE5/QT5 -> FPC 3.3.1 -> Lazarus 3.0

TRon

  • Hero Member
  • *****
  • Posts: 2647
Re: fpcupdeluxe and the Pico
« Reply #20 on: March 07, 2024, 03:07:09 am »
Does 3.0 count as a stable Laz release?  ;)
Dunno. Did it crash for you ?  :D

Thus, again if I understood dbannon correctly:
- use FPUpDeluxe to create FPC (or do it manually/scripted)
- create cross-compiler using fpcUpDeluxe (or do it manually/scripted)
- use the hosted FPC to build Lazarus (stable) from source manually (or scripted)
« Last Edit: March 07, 2024, 03:11:42 am by TRon »

cdbc

  • Hero Member
  • *****
  • Posts: 1157
    • http://www.cdbc.dk
Re: fpcupdeluxe and the Pico
« Reply #21 on: March 07, 2024, 03:17:06 am »
Hi
Nah... Had some teething-aches with QT5 and them damn window-titles in laz & had to use non-native file-dialogs due to speed reasons, but that's all fixed now and I'm a /happy/ camper  :D
Regards Benny
If it ain't broke, don't fix it ;)
PCLinuxOS(rolling release) 64bit -> KDE5 -> FPC 3.2.2 -> Lazarus 2.2.6 up until Jan 2024 from then on it's: KDE5/QT5 -> FPC 3.3.1 -> Lazarus 3.0

TRon

  • Hero Member
  • *****
  • Posts: 2647
Re: fpcupdeluxe and the Pico
« Reply #22 on: March 07, 2024, 03:43:13 am »
@cdbc:
Ah yes, I recognize the 'normal' issues that plague you  :-\

Unfortunately due to a bug in FPC I am unable to compile Lazarus 3.2 with recent trunk compiler. The workaround is present in Lazarus trunk but that is besides the goal (and trunk FPC does not compile trunk Lazarus atm).

edit: recent trunk compiler is also unable to build Lazarus 3.0 due to this so that afaik means a trunk FPC compiler at least before feb 13th 2024.
« Last Edit: March 07, 2024, 04:06:32 am by TRon »

dsiders

  • Hero Member
  • *****
  • Posts: 1095
Re: fpcupdeluxe and the Pico
« Reply #23 on: March 07, 2024, 05:05:35 am »
@cdbc:
Ah yes, I recognize the 'normal' issues that plague you  :-\

Unfortunately due to a bug in FPC I am unable to compile Lazarus 3.2 with recent trunk compiler. The workaround is present in Lazarus trunk but that is besides the goal (and trunk FPC does not compile trunk Lazarus atm).

edit: recent trunk compiler is also unable to build Lazarus 3.0 due to this so that afaik means a trunk FPC compiler at least before feb 13th 2024.

I'm using FPC 3.3.1-15189-gae06528db4 (2024-02-18) to compile Lazarus 3.99 (main), 3.2, and 3.0. Apparently there are version after this one that have issues too.

I have no idea what a "pico" is (some kind of spicy pepper?).
« Last Edit: March 07, 2024, 05:07:14 am by dsiders »
Preview Lazarus 3.99 documentation at: https://dsiders.gitlab.io/lazdocsnext

TRon

  • Hero Member
  • *****
  • Posts: 2647
Re: fpcupdeluxe and the Pico
« Reply #24 on: March 07, 2024, 06:03:05 am »
I'm using FPC 3.3.1-15189-gae06528db4 (2024-02-18) to compile Lazarus 3.99 (main), 3.2, and 3.0. Apparently there are version after this one that have issues too.
Thank you very much dsiders. I can at least confirm that the compiler can be build with bootstrap 3.2.2 and is able to build Lazarus 3.2 as well as Lazarus trunk.

That should be recent enough for both FPC and Lazarus (though Lazarus and tools are known to have issues with new constructs from trunk).

Quote
I have no idea what a "pico" is (some kind of spicy pepper?).
I could start talking about the size of my little .... toe but, it is actually about this  :)
« Last Edit: March 07, 2024, 06:14:13 am by TRon »

dbannon

  • Hero Member
  • *****
  • Posts: 2846
    • tomboy-ng, a rewrite of the classic Tomboy
Re: fpcupdeluxe and the Pico
« Reply #25 on: March 08, 2024, 03:04:11 am »
This is going on and on ....

  • My problem was that fpcupdeluxe was unable to build Lazarus main using fpc main at the present. A know issue apparently.

  • My observation was that, from time to time, that is to be expected.
  • My point was that fpcupdeluxe does not need to use main in either FPC or Lazarus. By using known good snapshots (how ever arrived at) it would be more stable wrt Pico.

    end.

    Davo

    (sorry, been out of circulation for a while. My aging U20.04 suddenly (??) developed a number of software problems, I'm now on Debian Bookworm. )
Lazarus 3, Linux (and reluctantly Win10/11, OSX Monterey)
My Project - https://github.com/tomboy-notes/tomboy-ng and my github - https://github.com/davidbannon

TRon

  • Hero Member
  • *****
  • Posts: 2647
Re: fpcupdeluxe and the Pico
« Reply #26 on: March 08, 2024, 03:41:55 am »
  • My point was that fpcupdeluxe does not need to use main in either FPC or Lazarus. By using known good snapshots (how ever arrived at) it would be more stable wrt Pico.
You seem to have missed the fact that it is you the user that can instruct FPCUpDeluxe to use a particular snapshot by providing a hashcode that belongs to it  :)

BTW: current issue was reported to have been solved so in theory you should be able to build trunk/trunk again. So, note down their hashes.
« Last Edit: March 08, 2024, 03:51:04 am by TRon »

dbannon

  • Hero Member
  • *****
  • Posts: 2846
    • tomboy-ng, a rewrite of the classic Tomboy
Re: fpcupdeluxe and the Pico
« Reply #27 on: March 08, 2024, 07:19:18 am »
You seem to have missed the fact that it is you the user that can instruct FPCUpDeluxe to use a particular snapshot by providing a hashcode that belongs to it  :)

Open fpcupdeluxe, click the Pico button, Dialog says "going to install....", Yes or No. If you click Yes you get main for both, if you click 'No' you go back to opening screen. There may well be a way to request particular commits, but I don't see it.

Davo
Lazarus 3, Linux (and reluctantly Win10/11, OSX Monterey)
My Project - https://github.com/tomboy-notes/tomboy-ng and my github - https://github.com/davidbannon

TRon

  • Hero Member
  • *****
  • Posts: 2647
Re: fpcupdeluxe and the Pico
« Reply #28 on: March 08, 2024, 07:28:43 am »
Open fpcupdeluxe, click the Pico button,
No wonder we're running around in circles  :)

Remember that first reaction I posted that had a link to the wiki page.... That means that you need to manually select what you want to install. Select FPC version (trunk), select Lazarus version (3.2) and press setup+ to set the details for the compilation and the branch name (main) and hash-code (ae06528db4 known to be working) for FPC then you can press the install FPC and Lazarus button (*). And yes that means you need to do a second step (following the wiki pictures), namely adding the arm cross-compiler (set subarch etc as discussed).

If you want a single button then I can create a form with a button on it running a bash script that will do all in one go  :)

edit (*) with the exception of this pesky issue but I am working on that.
« Last Edit: March 08, 2024, 07:38:46 am by TRon »

DonAlfredo

  • Hero Member
  • *****
  • Posts: 1741
Re: fpcupdeluxe and the Pico
« Reply #29 on: March 08, 2024, 10:25:31 am »
Pressing the Pico button does:
So, you can execute these steps by yourselves, with the working Lazarus hash as first step.

 

TinyPortal © 2005-2018