I suppose there are a number of ways to get started with the FPC compilers and the Lazarus IDE. Maybe start by installing these:
https://sourceforge.net/projects/lazarus/files/Lazarus%20Linux%20x86_64%20RPM/Lazarus%201.6.4/
I am evaluating the technology. Installing an unknown/untrusted RPM isn't consistent with my goals.
You can also check out the FPC and / or Lazarus trunk sources and build those too. See wiki?
The
wiki gives a few hints but it is surprisingly incoherent/incomplete. Perhaps with some guidance from experienced users, once I get the process sorted out I can update the documentation so the next person has a more direct, efficient and comprehensible route to getting started.
I think I might have discovered the location of the source and the basic directory layout for building on Linux, (but I am guessing). It might begin with something like this:
cd $BUILD
svn co https://svn.freepascal.org/svn/fpc/tags/release_3_0_2/ fpc
svn co https://svn.freepascal.org/svn/lazarus/tags/lazarus_1_6_4/ lazarus
svn co https://svn.freepascal.org/svn/fpcbuild/tags/release_3_0_2/ fpcbuild
svn co https://svn.freepascal.org/svn/fpcdocs/tags/release_2_6_0/ fpcdocs
There are also several non-official tools for managing cross-compiling, etc.
If you're serious about cross-platform, you might start new projects with this package:
https://macpgmr.github.io/MacXPlatform/LazXProj.html
Then you'll get installers, etc. for free.
Is cross-compiling the way to go? I had (naively?) envisioned a process where the design was developed on one platform then compiled on the other platforms.
As for stability, I would break things down into tiers. Tier 1 is Windows and Linux - quite stable for quite a while, although the LCL is kind of vintage, late 90s stuff. Tier 2 is Mac - incomplete and really not a Mac IDE, just a Unix IDE that happens to run on Mac. Tier 3 would be the experimental things like Android.
"LCL is kind of vintage" in what sense?
I don't need a Mac IDE (presuming compilation doesn't require the IDE) but I would like to deploy a Mac version of the product (a software application with GUI). Does that seem like a reasonable expectation for this technology (fpc/lazarus)?
However, even Tier 2 stuff might be sufficient for scientific software if you just need a basic UI.
One of, what I imagine to be, the more complicated interface components will involve embedding and controlling a media player, an interactive waveform viewer, and possibly other interactive data visualizations. Essentially, the GUI aspect of this software application can be thought of as an
annotation interface, like a
subtitle editor. Does that goal seem like a reasonable use of fpc/lazarus?