[Lazarus] Proposal for changing fpc version on the fly in the IDE
Mark Morgan Lloyd
markMLl.lazarus at telemetry.co.uk
Thu Aug 22 18:36:47 CEST 2013
patspiper wrote:
> On 22/08/13 16:23, Mark Morgan Lloyd wrote:
>> patspiper wrote:
>>
>>> When multiple FPC versions are used, the fpc binary and related
>>> utilities are usually located in <fpc folder>/<fpc version>/bin, and
>>> the compiler itself (ppcxxx) in <fpc folder>/<fpc
>>> version>/lib/fpc/<fpc version>. The folders could be different than
>>> these, but the point to note is that there are 2 folders that rely on
>>> the fpc version.
>>
>> I don't see that here (Linux/Debian, FPC and Lazarus built broadly
>> with defaults). Binaries are in /usr/local/bin, FPC-specific stuff in
>> /usr/local/lib/fpc/x.y.z where x.y.z is a version number. As a general
>> point, I normally copy a clean fpcsrc into x.y.z for Lazarus's benefit
>> but that still only leaves a single directory named for a version number.
>
> When you install using the distribution's packages or standard
> installers, you'll not be able to use more than one FPC version without
> considerable tweaking.
I started off with a standard FPC binary installation circa 2.0, this
put the utilities in /usr/local/bin ** . Since then I've generally built
from source- in many cases I've had to since there wasn't an up-to-date
binary- and I've never had to explicitly tell the build to use
non-standard directories.
So if you're now saying that I'm doing something wrong by- in some way-
overriding "correct" behaviour then I'm interested to know. Otherwise,
what you're suggesting is a significant change to FPC build and I
suggest you raise it with the compiler developers- it's not a Lazarus issue.
> Furthermore, each version has its own fpc binary and tools in the
> usr/local/bin folder. They could be compatible or incompatible across
> versions. Thus it is better for each version to have its own set of
> folders.
I've never seen any suggestion that this breaks backwards compatibility,
and if it does it should probably be raised as a bug- at least so that
it can be documented properly. In any event, as long as fpc (etc.) knows
what version of backend it's using then later versions should be able to
emulate older ones: I don't think anybody'd be fool enough to try the
other way round :-)
** On Linux. Solaris was lightly different, and of course Windows has
its own "best practice".
--
Mark Morgan Lloyd
markMLl .AT. telemetry.co .DOT. uk
[Opinions above are the author's, not those of his employers or colleagues]
More information about the Lazarus
mailing list