Am 06.12.2010 14:54, schrieb Marco van de Voort:
On Sun, Nov 28, 2010 at 10:45:59AM +0100, Sven Barth wrote:
On 27.11.2010 22:35, Florian Kl?mpfl wrote:
Am 27.11.2010 22:11, schrieb Sven Barth:

[OT]Can I cross compile FPC for another target using the Makefile?

e.g.
make clean all OS_TARGET=linux
?


Would this create a compiler that can run on Linux if I do this on
Windows? That's what I'm unsure about.

It will. You can even add CPU targets. I generated an entire lazarus for Mac
OS X/PowerPC on Windows.


I have confirmed that by myself yesterday as well. :D

But there are caveats:
- you must have suitable crossbinutils on Windows.
      Some are available on ftp in the /pub/fpc/contrib and
      /pub/fpc/contrib/cross directory
- non windows systems typically need any needed libraries on the compiling
    system. Simple programs for Linux and FreeBSD excluded.

The buildfaq contains a lot of background info on this.


As my NativeNT target is quite similar to Win32 (in terms what the compiler needs, not in terms of the RTL ^^), I don't need any crossbinutils or libraries.

Does FPC use units (outside of compiler) that aren't part of the
RTL?[/OT]

No.


Nice :)

Not units, but on e.g. BeOS and OS X, it might use libraries. (like libc).
The rtl of these interfaces libc.

For me it was important to know whether I need to implement some stuff in packages (fcl-base, etc) as well or whether RTL is sufficient.

I was already able to successfully compile FPC for NativeNT, but for profiling the process start up time I'll need to implement ExecuteProcess and let me say that Win32's CreateProcess is a big beast to translate ^^

(also I'll need to test StdIO as well...)

Regards,
Sven

--
_______________________________________________
Lazarus mailing list
[email protected]
http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus

Reply via email to