Dear Lazarus power users,
I'm part of a small team that has recently ported a rather large Delphi application to Lazarus. Everything went fine and I must say we were very happy with Lazarus!
The application is free software and it aimed mostly at students and researchers. It works fine on Windows and Linux (using both Qt and GTK). The source can be found here:
https://gitlab.com/ecoevomath/ulm/Now, we would like to compile the application and its GUI on recent versions of macOS (say, OS X 1.0* or, even better, macOS Sierra). It really does not matter which GUI toolkit we end up using, we would just like to get a functional app, and so far we have been unable to do this.
What we have tried includes:
- compiling in 32-bits and using Carbon: the compilation goes fine but the interface is completely broken and unusable.
- compiling in 64-bits and using Cocoa: same problem.
- compiling with Qt5: according the the documentation of Lazarus, the Qt5 binding is ready but will only be available in Lazarus 1.8. So we have tried to compile using CodeTyphon (http://www.pilotlogic.com/sitejoom/index.php/codetyphon --from what we understand, it packages a more recent version of Lazarus than the current official version). However, we have not yet managed to install the Qt5 binding...
We haven't tried very hard to compile with GTK or Qt4 because as Qt4 is no supported by recent versions of Mac and GTK require to emulate X11, that would make the program much harder to install for end-users... Our preferred option would probably be to use Qt5 because we could it on Linux, but as I said anything that works (while keeping the program reasonably easy to install) would do.
Some things I forgot to say:
- Our application uses the SynEdit widget.
- We are not experienced Mac users, so it could be that we missed something quite obvious...
Any help would be greatly appreciated because we are out of ideas and so unless one of you can help we're going to drop Mac support...
I can provide more detailed information about what we tried and what failed.
Thanks in advance!
bienvenu for the ULM development team.