Most recent version (that I know of at this moment) is already available in the depot (haikuports)
Would you happen to have a file called fpc.cfg on the system where the compile succeeded? if yes, how were you able to generate that? Seems something is wrong in the configuration hence for instance the unit āsystemā from fpcās rtl (precompiled) is not foundā¦
Ok, so that error is gone now. No need for fpc.cfg it turns out. Apparantly something went wrong when installing fpcsrc (and maybe fpc) I just uninstalled both and reinstalled them again directly, resulting in the build running upto Qt5pas during linking.
UPDATE: fpc.cfg -is- needed and is auto created in /boot/system/settings/etc/. this was done during the re-install apparantly.
UPDATE2: just needed to create a link to libQt5Pas, named libQt5Pas.so, in the lazarus/ide folder. It now runs, and gdb is also recognized. Oh, and needed to set the fpcsources folder manually as it sits in another location than were startlazarus is searching.
Well, although Lazarus is not really stable (for instance project properties when OKād stops execution of the IDE), I was able to nicely install all optional packages thatās needed for our software (so that recompiles the IDE every time a package is added).
Also I was able to build that software without trouble, for the first time natively on Haiku x64 for Haiku x64. The software runs quite stable, even the serial ports seems to work OK including baudrate setting (will check the termios thing though to be sure). There was one āhickupā: Haiku decided to re-arrange the order in which the USB-RS232 converters where āmappedā so I had to manually update the software config for that.
This is probably caused by the fact I just plugged them in one by one (using 2), and after reboot they were both already there. So Haiku did not bother to set the same adapters to the same port numbers.
For the IDE the font is still very spacial which is not very handy when really developing with Lazarus on Haiku.
Anyhow, I am very pleased with the results! Looking good indeed.
And of course a few screenshots:
I did a local rework on the recipe for libQt5Pas to remove the devel package, this should solve this issue I guess, nice to see you got it to work!
Good day,
Following the steps provided by @Begasus I was able to build and run Lazarus 2.2.O RC1 without errors. Problem is that the āAccess Violationā issue is still present, and yes, as @rudolfc pointed out, itās still āa bitā unstable.
I canāt get some packages installed to properly build CudaText, though it seems that adding them to the project does the trick. I presume Software built against Lazarus will inherit issues present in Lazarus, as CudaText shows same āAccess Violationā crash as Lazarus.
A Lazarus expertās expertise would be sincerely appreciated here.
Regards,
RR
Thanks for your work on this all!
Anyhow, should there not also be a link inside the lib folder with the name libQt5Pas.so (Without additional numbers etc)? I guess that would mean I can delete the manually created shortcut in the IDE folder?
Or is this one of the adaptations you did on the lib already?
The current recipe at haikuports moves the *.so lib to the _devel package, hence why it isnāt found, will push the change in a bit here so you could check
Not sure about this for the CudaText stuff, but there are more packages outthere you cannot install, but instead only add to a project (iāve seen a few). If on another platform (ie windows): can you install then or do you see the same behaviour?
Oh, btw if you have a crash, I guess you have a pointer into the problem
I did not test yet if gdb actually is usefull or if itās only recognized by the IDE. In my case execution stops without showing me any error at all, itās just āgoneā. Donāt like that, Iād rather see an errorā¦
let me know when I can reinstall the qt5 thing, Iāll test indeed
Package build and ready to reinstall
EDIT I guess you manually have to uninstall the _devel package
So thatās 1.2.9-2 I take it.
I never installed a qt5 _devel package btw.
Anyhow, I see all the correct links including the one I mentioned nicely in the libs folder. Iāll delete and recompile laz without the custom link in the ide folder now
UPDATE: make clean stops with an error about lazdebuggers.
You need to add that folder for the command fpcmake -r to your ārecipeā you typed earlier. If I do that make clean stops correctly.
Build is fine on 32bit also (with gcc8) but fails on launch because it canāt find libQt5Pas (links to it though when building), when I copy the libs (and symlinks) to ~/config/non-packaged/lib it finds it but then it fails to find libstdc++.r4.so (which is gcc2), so maybe the gcc8 library in a $prefix/lib pulls that in rather then the gcc8 counterpart?
Already did that here checking a build with bigide, but it fails to build then: /bin/ld: Argument too big
So make clean followed by just make-ing again, without the custom qt link, while I somewhere in between did that fpcmake -r for the debugger folder (I am assuming I donāt need to redo all that after a make clean), the lazarus builds and runs OK.
When I run using debugging I do see a debugger error window behind my application telling me it could not get the applicationās PID possibly due to missing debug info. I am guessing the debugger would not work before as well for now though.
UPDATE
OK, I guess debug info is really missing. The exe is 20Mb without debugging, using external debugging info that info is not generated afaict, using internal debugging info the file becomes 27Mb: which is not big enough by a long shot when I compare this with windowsā¦
The binary ālazarusā is about 55Mb on x86_64 and about 268Mb on x86_gcc2 (with bigide), no debug info there too
There is an issue on the port for gdb at haikuports, maybe related to the crashes? Upgrade GDB & send patches upstream Ā· Issue #253 Ā· haikuports/haikuports Ā· GitHub
UPDATE2:
make bigide works also. lazarus becomes approx 75Mb in size (otherwise 55Mb). in options I can choose the LLDB debugger next to GDB now. My exe becomes 66Mb in size, so looking good (lazarus wants me to enable dwarf debug info stuff and recompiles my exe once more).
Debugger does not work yet as at selection and running I get a warning that āā is not a valid exe name for the debugger. hmmā¦
Just came across this The selected debug format is not supported
yeah something like that I guess. Could be gdb now works⦠anyhow, of course for lldb I needed to do a few more fpcmake -rās⦠recompilingā¦
update: nogo yet on that debugger. For GDB I donāt know what version I should have: when I start lazarus using gdb it tells me that we have wrong version in compilation unit header (is 4, should be 2). That sounds like gdb is too old and does not understand 4. we have version 6.3(?) and we would need 7.1(?), or at least a newer version.
Also when you startlazarus from the command line you see that the program to debug PID is supplied, only gdb does not pick it up. incompatible somehow?
UPDATE:
Looks like to old, it was discussed here before. gdb needs to be updated. did we do that already?
Trying to compile/use FPdebugger fails for me with too long arguments with ld during lazarus bigide recompile. Giving up on this part. Besides it seems to have very limited capabilities anyway.
I did see that some lazarus projects that are inside lazarus, amongst which some stuff for this debugger need installed windres from Haikuās crosstools in home/config/non-packaged/bin/ (windows resource compiler) to make building them work.
Maybe that app should be installed alongside lazarus inside a package.
So I think Iāll conclude that debugging with lazarus on Haiku x64 is not possible at all. It only would work with a recent gdb, ours is too old (6.3). I did a brief try at compiling it but some magic is probably needed to make that happen on Haiku (it fails for me).