Lazarus 1.9 trunk Qt4 and Qt5 interface (screenshots)

I have tried to install Lazarus with fpcupdeluxe, both in 32 & 64 bits modes and with QT5 but everytimes it finished with errors.
Freepascal Beta RC1 works but fp IDE is not functional, you can use nano or vim to edit code and compile from command line with fpc:
ftp://ftp.freepascal.org/pub/fpc/beta/3.2.0-rc1/
It install in non packaged so it not need additional privileges.

So Lazarus and the LCL are not building at all right now? Is that the issue?

I havent enough skills to make run lazarus, i have tried with Freepascal 3.2 beta and latest lazarus sources, with libqt5pas, and with options like BIGIDE or compile all…

The most advanced option by the moment is s40in solution, i tried to install its packages some time ago but it give me fpc.cfg errors and i was unable to write such file to protected system folder (in Linux i can write to /bin).

Once FreePascal will work in Haiku 32/64 is a matter of time Lazarus will be supported officially, but they must be motivated for active downloads and use.
In the past there was bepascal, a lot of effort but little or none use so the project was abbandoned.

Lazarus is looking for its settings in the wrong folder. You can do the following to ‘fix’ that:
cp /system/data/fpc/fpc.cfg /etc

2 Likes

Hi,

As I just stated (offtopic) here:

I want to ping this thread about my changes to termios inside FPC because of changes in Haiku done in the past. I created a bugreport over at FPC and forgot to enable email notifications and never checked back I’m afraid.
The people at FPC are listening apparantly as there are some questions that need to be answered, and maybe the route to the solution (serial port trouble) changed in Haiku and/or in FPC.

I need help with that or maybe even better: can someone take over for me!?

Bugreport is here:
Found the bugreport over at FPC:
https://bugs.freepascal.org/view.php?id=36958

And the questions open are:

Just a few points I’d like to have cleared up:

  • in termios.inc it’s essentially only the name of a few constants that were changed (and some added)?
  • the only effective changes for termiosproc.inc are the changes in CFSetISpeed and CFSetOSpeed?
  • is there a reason why you changed from using imports for tcflow(), tcflush() and tcdrain() to using fpIoCtl? From what I can see the code for them in libroot looks the same, but now we’d have the problem should these implementations be changed we’d have to update termiosproc.inc again as well

Thanks a lot!

5 Likes

FPC and the sources for version 3.2.2 are already available at haikuports, I managed to build Lazarus so far (no package) but launching it still fails to find libQt5Pas.so.1 … need to see how the package from @s40in was made :slight_smile:

Don’t remember by heart I’m afraid. Anyhow, you did see that the sources for this are inside lazarus at fpcupdeluxe/lazarus/lcl/interfaces/qt5/cbindings I take it…

Yes, try’d with building them inside the source also, no luck there … I’m doing some checkouts for the package for libQt5Pas atm

I think I used those sources instead of the old sources in the qt5 beos/haiku package you can find online. That works perfectly, though on some occasions I had to modify (upgrade) some parts in the past IIRC.

So you’re on the right track (combine them :wink: )

OK, repackaged libQt5Pas and it builds ok (Lazarus), on launch it still doesn’t seem to find libQt5pas.so.1 (copy’d it over to ~/config/non-packaged/lib and then it seems to find it)
But then it fails to find libstdc++.r4.so? (not sure which one is responsible for it now … libQt5Pas/FPC/Lazarus?)

~/destdir/bin> startlazarus 
runtime_loader: Cannot open file libstdc++.r4.so: No such file or director

For applications on windows I always just dump the bindings in the application folder itself, so where the exe is, along with the needed Qt core libs and their dependancies. I don’t recall at this moment where it needs to be for laz on haiku. could you as a test not just look in the pkg files which I posted, or in the originals? Another thing: what if you start lazarus directly? I am guessing ‘startlazarus’ is not lazarus IDE itself?

Please note I’m sort of a beginner myself with this stuff :wink:

EDIT: Oh yeah, it’s important to use the same libs /dependancies for compiling the bindings as is done for the app, I seem to remember otherwise you’ll get missing symbols. Ah, and same goes for the used compiler.

Checked, the build I did for FPC is gcc8, libQt5Pas also, switched to x86 in Terminal, so compiler wise it should be the same.
lazarus (lazarus-ide links to it) and startlazarus won’t start due previous error: will post a screenshot in a while, I’ve checked several options to place the lybraries (non-packaged/alongside/intree in ./lib) all the same …

Lazarus

2 Likes

Something fishy, because that missing libstdc++.r4.so lib is gcc2 lib. Something went wrong in the executable linking stage, gcc4+ programs should not depend on that lib AFAIK.

Also you guys should strip that 120+mb lib.

That one isn’t included at haikuports, that is the internal build in the sourcetree from lazarus :slight_smile:
Doesn’t matter if I use that one or the one provided in the depot (1.2.9), same results, so it’s either FPC or Lazarus pulling libstdc++.r4.so in :frowning:

On 64bit :ok_hand:

Lazaus-2-0-12-x86-64

12 Likes

wow, some months ago i was able to compile a beta version but it was not stable.
Now that you have a running version then you can create a package :slight_smile:

New Lazarus Release Candidate need a specific qt compilation from code bindings.

I’m just the messenger, even if I got it to build atm on 64bit I wouldn’t have a clue how to use it :wink:
I’ll leave that to the experts … and when it comes to it … patches welcome :slight_smile:

EDIT for the Qt bindings there is already the package in haikuports libQt5Pas :slight_smile:

Steps I did here to build Lazarus on 64bit (started with a recipe but getting weird errors atm (32bit), so that has to wait and needs investigation) :slight_smile:

Download lazarus source: https://sourceforge.net/projects/lazarus/files/Lazarus%20Zip%20_%20GZip/Lazarus%202.0.12/lazarus-2.0.12.tar.gz

Install: fpc,fpc_source and libqt5pas from haikuports (gdb for the debugger but that's not needed for the build)

Extract the source cd to the source and run the next commands from Terminal:

export FPCDIR=/boot/system/lib/fpc/3.2.2/src/
fpcmake -r
cd components/
fpcmake -r
cd ../lcl/
fpcmake -r
cd interfaces/
fpcmake -r
cd nogui/
fpcmake -r
cd ../../../tools/
fpcmake -r
cd ../lcl/interfaces/qt5/
fpcmake -r
cd ../../../
make LCL_PLATFORM=qt5 (to use with 'bigide' it needs more finetuning)
2 Likes

Genius! :clap: :clap: :clap:

I need time now to get back on track!!!

Thanks @Begasus !!
Regards,
RR

2 Likes