- Windows=========- none, *but* an SVN installation in your path (e.g. TortoiseSVN) is recommendedYou can build Lazarus without an svn.exe in your path, but the Lazarus tool svn2revisioninc won't work and you won't get an SVN revision number in your Help/About box.If needed, the tool will download all needed binaries (bootstrap compiler, binutils, svn executable)

...

Cross compiler extensions=========================fpc(laz)up has a facility to extend its functionality using cross compiling modules.These are classes that inherit from the fpcup TCrossInstaller class defined in m_crossinstaller.pas

An example is the Windows 32=>Windows 64 cross compile unit in m_crosswin64.pas.Note that this is a simple version, as there is no need for separate binutils and library paths.A similar module is the *nix=>Windows 32/64 modules in m_anyinternallinker_to_win386.pas and m_anyinternallinker_to_win64.pasThese modules get registered automatically (using the unit's initialization section) when compiled into the fpcup code. You do need to add the unit to the fpcup.lpr project uses clause though.

To use them, you would specify --cputarget= (e.g. i386, x86_64... the way FPC defines the CPU names)See fpcup -h for possible values--ostarget= (e.g. freebsd, win32,...... the way FPC defines the OS names)

What you want to build e.g.--only=FPCCleanOnly,FPCBuildOnly(or leave this parameter for building FPC and the Lazarus LCL)

If there's a cross compiler available for the combination source+target OS/CPU, it will run. Otherwise you will get an error message.

For any platform that has an internal linker in FPC (FreeBSD, Linux,..) you can run a Windows cross compiler: 32 bit:--cputarget=i386 --ostarget=win32 --only=FPCBuildOnly,LazarusBuildOnlyor Windows 64 bit:--cputarget=x86_64 --ostarget=win32 --only=FPCBuildOnly,LazarusBuildOnlyWhen that is done, you can cross compile to Windows using Lazarus.

See fpcup.html for more details on implementing your own cross compilers and other extensions to fpcup.

It is already possible. I use fpcupdeluxe to download several Lazarus/FPC combos (trunk/stable) on the same pc, and everything needed to cross compile from one of them (Win32) to Win64/Lin32/Lin64 at a click of a button.

Thanks for the tip. Having spend two days already I can understand how long it took you.

(I did my first try in 1998, from Linux to Freebsd. It failed because FreeBSD was not a target yet. After I fixed that I tried again and some of the experiences of a second round of testing in 2003 were the fundament for the buildfaq)