Michael Schnell wrote 11 lines
Hi Experts,
We are designing a controller PCB using Linux on an ARM CPU.
We would like to run Lazarus generated programs with a GUI on this
hardware.
Now we would like to know how much RAM is necessary (besides the
"Business Logic" variables the program uses).
I suppose we will need to use some Widget Set (QT ?, GKT ?)
As determined by the distro you select. GTK2 is probably a safe choice due to its ubiquity, Qt has to have approximately the correct version libraries+shim+lazarus and in practice I've only got it working on x86 Debian "Squeeze".
and X11
Server, even though the GUI should only be visible via VNC via TCP/IP.
Watch out here: I believe that there's some form of bug in (at least some variants of) VNC which prevents it working on ARM. Remember that you can also tunnel X over SSH.
Show quoted text 6 lines
The controller (TI AM1808) does have graphics hardware, but I don't
suppose that this makes much difference.
What (free) Widget set should be used ?
How much RAM is necessary ?
Depends. As I've mentioned before, I find I can run programs on an NSLU2 "Slug" with only 32Mb, but I suspect that the issue here is how much "important" stuff (daemons etc.) gets swapped out and how long it would take to swap it back in if needed in a hurry. If there's a five-second hiatus every time somebody touches SSH with a port-scanner it's going to be a very effective DoS.
Compiling Lazarus itself is /right/ out in 32Mb, see http://wiki.lazarus.freepascal.org/Qemu_and_other_emulators#Relative_Performance and note the relative speeds of compiling FPC and Lazarus on a Slug and on an emulated processor with much more RAM.
As a general point, note Ludo's recent patches.
Mark Morgan Lloyd
markMLl .AT. telemetry.co .DOT. uk
[Opinions above are the author's, not those of his employers or colleagues]