[fpc-devel] FPC 2.7.1 r22088 fails with compiler error in fpdoc.

Michael Van Canneyt michael at freepascal.org
Thu Aug 16 10:47:19 CEST 2012

On Thu, 16 Aug 2012, Sven Barth wrote:

> Am 16.08.2012 10:32, schrieb Michael Van Canneyt:
>> On Thu, 16 Aug 2012, Sven Barth wrote:
>>> Am 16.08.2012 09:56, schrieb Graeme Geldenhuys:
>>>> On 16 August 2012 08:37, Michael Van Canneyt <michael at freepascal.org>
>>>> wrote:
>>>>>   make cycle PP=ppcx64-2.6.0
>>>> I always do...
>>>>     make clean
>>>>     <svn update>
>>>>     make all FPC=<last stable FPC release>
>>>> This always seems to work. I assume 'make all' gets translated to a
>>>> 'make cycle' somehow? Or have I just been lucky for the last 5 years
>>>> doing it my way?
>>>> What's the difference between 'all' and 'cycle' options?
>>> "make cycle" only works in the compiler directory and is used
>>> internally by a "make all" to compile a new compiler in the correct
>>> way and to ensure that it can compile itself again.
>>> Normal users don't need "make cycle".
>> They do when using a trunk compiler. Not if using the released compiler.
> The only trunk compiler they could use for compiling a trunk compiler is the 
> compiler that is created for that exact revision. Using an older trunk 
> compiler (even using "make cycle") is not supported and I don't think it's 
> good to encourage people to use an (older) trunk compiler to compile trunk...

I did not suggest that, on the contrary ?

When using a trunk compiler (that was a given from OP) the only way to update is 
the following:

# update rtl & compiler to latest trunk.
svn update rtl compiler
# run cycle using latest release.
make cycle PP=latest-release 
# now you have latest rtl & compiler ready to install.
make install

I have this automated in a script.

If you have only the release compiler, cycle is not needed. 
Then, you can just recompile the RTL, packages, utils.


More information about the fpc-devel mailing list