Just a small status update here. In the past months I ‘ported’ our full company application from Delphi 2010 to Lazarus (now 2.0 RC2 and FPC 3.2.0 fixes). This 80,000 line program now almost fully correctly works as 32 and 64bit program on Windows 7, Windows 10, Linux x86 Ubuntu 16.04, Linux x64 Ubuntu 18.04, ARM 32bit linux, and (drum roll) Haiku x86 (still a pre-beta1 nightly build).
It cost me some 4-5 months to complete this task, and I then needed one or two days to get the Haiku version going.
This application controls our measuring device via a serial or USB port. This device is a GC (gas chromatograph) that measures (non-)toxic gases in air in various setups.
The program runs under widgesets:
Qt4, Qt5, Gtk2, Win32. Gtk3 also runs, but barely (still alpha support with lazarus).
All versions compiled on Windows 7 or Windows 10 x64 with Fpcupdeluxe, and all the needed cross compilers. Note that targeting Haiku did not work with 32bit version Lazarus, but is does work with the 64bit lazarus version on Windows.
On haiku I have two non-functioning parts as far as I have seen upto now:
-Indy10 does not link (but does compile)
-TAChart does not link (but does compile).
So I disabeled those two parts.
Please note this application is a MDI application, which I mimic on non-Qt targets (But only fullscreen ‘child’ forms, though win32 also windowed). Official windowed childs work with Qt4 and 5.
I had to patch two things:
- For haiku serial port support (I use synaser) I needed to patch a few files (See earlier in this discussion).
- For Qt4 and 5 there’s an error in LCL/interfaces/Qt(5) where mouse positions are incorrectly reported in MDI childforms that are: -non-fullscreen and/or -contain a menu. I have a small patch for that that fixes this.
I tested Haiku, Linux and Windows all needing this patch.
I am attaching some screenshots of this application to this message.
I must say that I am very impressed with Lazarus/FPC!
And with Haiku as well, I am very proud to see this application (on which I am working for 6+ years fulltime now) on my favorite OS and of course I am demonstrating this to my colleagues every now and then…
With a big smile on my face