[lazarus] crosscompiling

Marco van de Voort marcov at stack.nl
Wed Oct 15 10:20:54 EDT 2003



As some might have noticed already (e.g. on IRC) , I've investigated the
situation with crosscompiling under FPC 1.1.x

Today I managed to compile a static FPC textmode IDE for linux from win32,
including the rest of the FPC CVS using one single MAKE command,
which pretty much means that crosscompiling in general is not a problem
anymore. (as long as it is static)

In time (coming) months, I want to extend this to Lazarus too, so that in
the future one machine can generate lazarus snapshots for several machines,
but also that lazarus users might be able to generate versions of their apps
for several platforms.

Why do I say this? There are some things to be done, or at least brought to
your attention:

- This is all easier with 1.1 then with 1.0.x, so an extra reason for swift
  migration. 1.1 has some extra options to control calling of the assembler
  linker. This btw also works for other processors on 1.1.x , not just other
  OSes.
- It requires systematic use (and keeping up to date) of the makefile.fpc
  system. E.g. a week ago, when I last tested it, lazarus make install
  didn't work because it was looking for units that are no longer used.
 
---------------
Another problem is that the size of the set of needed tools and libs is
huge. 

- One needs a cross assembler, archiver and linker for each target
  platform. 
- one needs appopriate libraries for each target platform.

I don't think it'll ever be able to set up a downlodable setup, simply
because it would be too large, both because of mirroring reasons and
bandwidth.

(FPC+Lazarus+sets of cross-binutils+ needed library sets that allows
generation of applications FROM x TO say 4 or 5 architecture-platform
combinations, specially if you start to add mysql/postgresql client libraries
for dataware stuff etc. Think hundred+ MB compressed here, and we have 
10 core platforms)

Luckily, not everybody will be interested in this, so maybe we can setup
some CD distro thingy.






More information about the Lazarus mailing list