[fpc-devel] One fpc.cfg per fpc version

patspiper patspiper at gmail.com
Mon Feb 17 17:56:45 CET 2014


On 17/02/14 17:53, Michael Van Canneyt wrote:
>
>
> On Mon, 17 Feb 2014, patspiper wrote:
>
>> On 17/02/14 17:13, Michael Van Canneyt wrote:
>>>
>>>
>>> On Mon, 17 Feb 2014, patspiper wrote:
>>>
>>>> On 17/02/14 16:45, Mattias Gaertner wrote:
>>>>> On Mon, 17 Feb 2014 15:10:03 +0100 (CET)
>>>>> Michael Van Canneyt <michael at freepascal.org> wrote:
>>>>>
>>>>>> On Mon, 17 Feb 2014, Mattias Gaertner wrote:
>>>>>> [...]
>>>>>>> Is there already a doc about how to install multiple versions of 
>>>>>>> fpc?
>>>>>> No, because
>>>>>> a) There are so many ways to do it
>>>>>> b) There are so many platforms.
>>>>>> I prefer to document the possibilities and let the user figure 
>>>>>> out for himself what works best.
>>>>> That's definitely a good thing.
>>>>>
>>>>> The next step would be to create an example. I guess a common 
>>>>> setup is
>>>>> the latest release and trunk.
>>>>>
>>>>> Let's say I start such a page.
>>>>>
>>>>> Then I would explain the two common setups
>>>>>
>>>>> The clean approach:
>>>>> 1.1. read Michael's docs
>>>>> 1.2. install the latest released compiler
>>>>> 1.3. download the trunk sources, compile it
>>>>> 1.4. "make install INSTALL_PREFIX=~/fpc/2.7.1"
>>>>> 1.5. setup a fpc.cfg (~/fpc/2.7.1/lib/etc/fpc.cfg), add
>>>>> -FD~/fpc/2.7.1/bin and adapt the -Fu lines.
>>>>>
>>>>> Then you can select the 2.6.2 via /usr/bin/fpc or the 2.7.1 via
>>>>> ~/fpc/2.7.1/lib/2.7.1/ppcx86.
>>>>
>>>> Calling ppcxxx directly breaks easy cross compilation using build 
>>>> modes.
>>>
>>> Not if the IDE is aware of this.
>>
>> Yes, but that would mean extra coding in the IDE just to duplicate 
>> fpc functionality. It will probably add as well the burden of 
>> maintenance whenever new targets are added to fpc.
>
> I agree that the best option would be to use the -V and -P options of 
> fpc.

I am not so keen on using -V as it requires extra steps to be done 
beyond fpc's 'make install'. On the other hand, -Xp can handle vanilla 
make installs (based on the "clean approach"). Moreover, I prefer not to 
use the same bin folder for executables from different versions, and 
have instead completely separate top folders.

> But, for this, it would be best if fpc can list the available versions 
> and architectures/cross-compilers.

+1

On a side note, for 2.7.1, 'fpc -h' shows the -V and -Xp options whereas 
'fpc' alone (requires the pressing of <enter> to view successive pages) 
does not.

Stephano



More information about the fpc-devel mailing list