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]
--
_______________________________________________
Lazarus mailing list
[email protected]
http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus