[fpc-devel] buildfaq

Hans-Peter Diettrich DrDiettrich1 at aol.com
Wed Aug 4 15:50:19 CEST 2010

Marco van de Voort schrieb:

>> 2) An unqualified reference (PP=mypp) most proably fails - where exactly 
>> does Make search for that compiler?
> Works for me. It searches in the PATH. It might not look in the current dir
> though, is that what you mean? That is a make gotcha though.

So it's not recommended to use an unqualified name.

>> 4) How does FPC handle different targets? IMO every target is 
>> implemented in a specific executable, so how does pp or fpc proceed when 
>> it is invoked with an target specifier, that it cannot handle itself?
> This is clearly explained in the FAQ. A binary per architecture is the
> minimal needed configuration.

This is not what I asked for :-(

Possibly fpc is not rebuilt during make all or make install, when it had 
already been built for a different target before. Then it assumes the 
old target, for which it was built before. Possibly...

> The maximal possible configuration is an m x m matrix (with m the number of
> targets), each with a different host-target, dest-target.

You mean when cross-compilers are cross-built? I'm happy with a single 
compiler for my current machine, it takes enough time to build on 
Windows :-(

>> 5) A matter of convenience: Currently the easiest way to get both FPC 
>> and Lazarus up (on a Windows system) is the installation of Lazarus 
>> 0.9.28, including FPC 2.2.4 and all required build tools. That's the 
>> latest Lazarus/FPC distribution, available for almost all platforms, 
>> that runs off the shelf. Unfortunately the 2.2.4 compiler can not 
>> compile the 2.5 sources, so that another binary must be installed. In 
>> the worst case multiple (make and install) steps are required, until the 
>> 2.5 sources can be compiled by a 2.4 version - including all the RTL 
>> stuff. Can we get some more version compatibility?
> I don't see any possibilities here.  2.2.4 + 2.4.0 bridges a major version
> cycle, and this would mean it would take 2,3 years before any new feature or
> fix can be used in the fpc repository codebase.
> Specially if the only reason is to avoid a small download. The current
> situation is already enough work.

The "small download" of the 2.4 64 bit cross-compiler cannot be avoided, 
and it requires another cross-build on the 64 bit host=target system. It 
would be nice to have an combined 32/64 bit release for Windows, not 
only an cross-compiler. This would be a small effort...

> And of course we couldn't predict that Lazarus would not release anything
> for 2.4.0

AFAIK the Lazarus people are still waiting for a "final" 2.4 release. 
Only Lazarus 0.9.29 requires at least FPC 2.4, before an FPC 2.2.4 was 


More information about the fpc-devel mailing list