Recent

Author Topic: Lazarus Release Candidate 3 of 4.0  (Read 12423 times)

dbannon

  • Hero Member
  • *****
  • Posts: 3319
    • tomboy-ng, a rewrite of the classic Tomboy
Re: Lazarus Release Candidate 3 of 4.0
« Reply #30 on: April 12, 2025, 04:27:15 am »
Why nobody opened issue about it. It's the best way to get it resolved.

Opened https://gitlab.com/freepascal.org/lazarus/lazarus/-/issues/41587

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

kito

  • Jr. Member
  • **
  • Posts: 79
Re: Lazarus Release Candidate 3 of 4.0
« Reply #31 on: April 12, 2025, 04:16:13 pm »
I am deeply grateful to the Lazarus team for their dedication and continuous efforts to deliver such outstanding updates. Their commitment to excellence inspires users like me to stay engaged and motivated. Thank you for making Lazarus better with every release!
We can barely feel your presence, because of the depth of your silence

PeterBB

  • Jr. Member
  • **
  • Posts: 62
Re: Lazarus Release Candidate 3 of 4.0
« Reply #32 on: April 14, 2025, 03:37:47 pm »
The test suite on Debian fails with version 4.0 release candidates.
https://tracker.debian.org/pkg/lazarus

There is a new package in v4.0
packager/registration/fcl_unicodertl.lpk

and it does not seem to build on either Debian or Arch linux.
Code: [Select]
Fatal: (10022) Can't find unit System.Classes used by LazarusPackageIntf
Is this a regression, or is this new package maybe intended to be Windows or Mac only?

Cheers,
Peter

Martin_fr

  • Administrator
  • Hero Member
  • *
  • Posts: 11040
  • Debugger - SynEdit - and more
    • wiki
Re: Lazarus Release Candidate 3 of 4.0
« Reply #33 on: April 14, 2025, 03:57:41 pm »
There is a new package in v4.0
packager/registration/fcl_unicodertl.lpk

and it does not seem to build on either Debian or Arch linux.
Code: [Select]
Fatal: (10022) Can't find unit System.Classes used by LazarusPackageIntf
Is this a regression, or is this new package maybe intended to be Windows or Mac only?

I don't know the details / So someone else will have to react / or it needs to go the bugtracker (if not resolved coincidentally by any comment below).

"system.classes" is afaik for fpc 3.3.1. (Or even, only for special installs of 3.3.1 ?).
There is a define in that unit "LazarusPackageIntf": FPC_DOTTEDUNITS and this controls if the code is for current fpc, or the new flavour with dotted unit names.

Possible, that define is incorrectly set on your setup. And if so, I don't know why.


One possible reason could be that you have more than one version of FPC installed. (3.3.1 and either 3.2.2 or 3.2.3 ?)
Or that you had one of them in the past, and the other now, and there are left overs...

Any such left overs or double presence may lead to incorrect detection.



If there are/were multiple fpc versions involved on your setup
(if not then ignore)

Note that on Linux, more than one fpc is possible, but rather tricky.

By default the fpc config goes into /etc/fpc.cfg
(or alternatively into your home folder // IIRC ~/.fpc but may be something similar instead).
And that means, that multiple installs need special care so they don't affect each other...

- It may be (I heard, but never tested) possible to IFDEF in the fpc.cfg.
- it is also possible to move the fpc.cfg into a location relative to each install (but I don't recall the exact location, and conditions)
- It is possible to wrap fpc into a shell script and add a parameter with the location for fpc.cfg (that is what fpcupdeluxe does) - of course then all acces must use that script

In the 2nd and 3rd case, you still may have to make sure that there is no global/home fpc.cfg as it may be found in addition (again, not sure...)


PeterBB

  • Jr. Member
  • **
  • Posts: 62
Re: Lazarus Release Candidate 3 of 4.0
« Reply #34 on: April 14, 2025, 04:21:13 pm »
Hi Martin,

FPC_DOTTEDUNITS is set unconditionally in fcl_unicodertl.lpk

This is looking like a bug, I'll raise an issue on the tracker.

Cheers,
Peter

Martin_fr

  • Administrator
  • Hero Member
  • *
  • Posts: 11040
  • Debugger - SynEdit - and more
    • wiki
Re: Lazarus Release Candidate 3 of 4.0
« Reply #35 on: April 14, 2025, 05:12:33 pm »
Code: Pascal  [Select][+][-]
  1. fcl_unicodertl

I didn't even realise the name.  Again not 100% sure but...

Isn't unicode-rtl limited to fpc 3.3.1 (i.e. it was added only after 3.2.2 was released, and also not merged to 3.2.3).

If so, the question then is, why the IDE tries to include that package.

TRon

  • Hero Member
  • *****
  • Posts: 4324
Re: Lazarus Release Candidate 3 of 4.0
« Reply #36 on: April 14, 2025, 05:28:20 pm »
Note that on Linux, more than one fpc is possible, but rather tricky.
Off-topic but for the record: on any OS that is able to run a FPC compiler.
Today is tomorrow's yesterday.

PeterBB

  • Jr. Member
  • **
  • Posts: 62
Re: Lazarus Release Candidate 3 of 4.0
« Reply #37 on: April 14, 2025, 05:29:24 pm »
Code: Pascal  [Select][+][-]
  1. fcl_unicodertl

I didn't even realise the name.  Again not 100% sure but...

Isn't unicode-rtl limited to fpc 3.3.1 (i.e. it was added only after 3.2.2 was released, and also not merged to 3.2.3).

If so, the question then is, why the IDE tries to include that package.

Hi Martin,

I don't know if the IDE is trying to include this package. 
Our test suite is probably just trying to build all the packages it finds.
Can fcl_unicode-rtl be safely ignored? 
If that is the case, maybe we can just exclude it from our tests?

Or would it be safer to rm fcl_unicodertl.lpk ?

Regards,
Peter

Martin_fr

  • Administrator
  • Hero Member
  • *
  • Posts: 11040
  • Debugger - SynEdit - and more
    • wiki
Re: Lazarus Release Candidate 3 of 4.0
« Reply #38 on: April 14, 2025, 05:54:51 pm »
I had a quick look into the description of the package
Quote
The FCL - FreePascal Component Library provides the base classes for object pascal. The FCL_UnicodeRTL is the FCL for the subtarget UnicodeRTL, which uses dotted unitnames and the default String is UnicodeString.

subtarget and dotted unit names are FPC 3.3.1 only (and afaik, even there, only when build with special flags).
So this package is only for using those new feature.

You can safely skip building it.

If you remove the lpk file (which should be fine), you may also want to remove the lpl file in package/globallinks. Otherwise the IDE may complain that the lpk is missing.

alank

  • New Member
  • *
  • Posts: 16
Re: Lazarus Release Candidate 3 of 4.0
« Reply #39 on: April 15, 2025, 11:20:49 pm »
Honestly, installing a binary package and then rebuilding it with a different widgetset seems a very strange thing to do IMHO. Alan has not been back since posting, maybe he could clarify why he wanted to do this ?  Only reason I can think of is he, sensibly, wants to build qt5 apps but thinks, incorrectly, he needs a Qt5 based IDE to do so ?

Given what we ask Lazarus to do when its rebuilding and finds itself in read only space, problems like that are to be expected IMHO. As far as I know, the "rebuild and tuck away in user space" system does not seem to be documented anywhere and while obviously very clever code, not something to play with this late in a release cycle.

AlanK, thanks for the report, this is a real bug and every real bug report received is valuable. On Unix, my advice is always build Lazarus directly from source in user space. Instructions on the wiki.

Davo

The Gtk2 widgetset looks fairly bad (IMO) on modern Gnome and KDE desktops. The Qt5/6 widgetsets do a better job fitting in with the environment.

I typically stay with the default lazarus / fpc combination that Fedora ships with (they do a very good job keeping the packages fairly up to date) for ease of dev environment reproduction and stability. I believe that they provide packaged versions of Lazarus-lcl for Gtk2/3 and Qt4/5, as well.

Sometimes, later versions of Lazarus using the Qt5/Qt6 widget sets require a new version of libQt5/6pas that is no longer compatible with the library shipped with the distribution, etc.

In this case, I was just trying to lend a hand with testing the new release using the normal steps I always take on a fresh vm with no Lazarus/FPC already installed.

Hope this helps,
  Alan

Mr. George

  • New Member
  • *
  • Posts: 23
Re: Lazarus Release Candidate 3 of 4.0
« Reply #40 on: April 24, 2025, 01:38:39 pm »
How to enable new "docking mode" after installation?
First welcome screen is already closed.

Hansvb

  • Hero Member
  • *****
  • Posts: 793
Re: Lazarus Release Candidate 3 of 4.0
« Reply #41 on: April 24, 2025, 03:41:24 pm »
You can go to options, environment, docking/anchordocking.
It has only one checkmark, Enable docking or IDE Windows

Mr. George

  • New Member
  • *
  • Posts: 23
Re: Lazarus Release Candidate 3 of 4.0
« Reply #42 on: April 24, 2025, 04:27:43 pm »
Thanks. I installed using fpcupdeluxe and had to manually add the package from fpcupdeluxe to see the new "docking/binding" list item.

TRon

  • Hero Member
  • *****
  • Posts: 4324
Re: Lazarus Release Candidate 3 of 4.0
« Reply #43 on: April 24, 2025, 04:36:33 pm »
Thanks. I installed using fpcupdeluxe and had to manually add the package from fpcupdeluxe to see the new "docking/binding" list item.
That is correct.

By default FPCUpDeluxe does not install the anchordockingdesign package while "the normal" install does. If it is present then on startup the IDE will ask which mode to use (docked or undocked). When also installed the package docked formeditor then it will also do the same for the IDE form editor.

Custom packages can be chosen to be installed with FPCUpDeluxe but requires a bit of knowledge/experience (e.g. it is not ever a good idea to just install everything because you can because of various reasons)
« Last Edit: April 24, 2025, 04:38:12 pm by TRon »
Today is tomorrow's yesterday.

 

TinyPortal © 2005-2018