[fpc-devel] Cross-compiling and warnings from linker
Tomas Hajny
XHajT03 at hajny.biz
Tue Nov 23 14:15:16 CET 2021
On 2021-11-23 13:17, Sergey Organov via fpc-devel wrote:
> Tomas Hajny via fpc-devel
> <fpc-devel-PD4FTy7X32k2wBtHl531yWD2FQJk+8+b at public.gmane.org> writes:
>
>> On 2021-11-22 16:46, Sergey Organov via fpc-devel wrote:
>>> Jonas Maebe via fpc-devel
>>> <fpc-devel-PD4FTy7X32k2wBtHl531yWD2FQJk+8+b at public.gmane.org> writes:
.
.
> The compiler will still read only 2 configuration files at most, the
> default for given instance of the compiler, and user's one.
The user would still need to remember that the first one depends on the
installation path (which may not be even known to the compiler on some
platforms as far as I remember!). The user may not even care/remember
where the compiler is installed under normal conditions.
> I.e., compiler installed in /usr should *not* read
> /usr/local/etc/fpc.cfg, only /etc/fpc.cfg. Compiler installed
> elsewhere,
> say, in /abc/def/custom, should read /abc/def/custom/etc/fpc.cfg.
>
> The idea of backing to read /etc/fpc.cfg if /abc/def/custom/etc/fpc.cfg
> is not found for backward compatibility that I've suggested above now
> doesn't look useful to me, as I can't figure a use-case where it would
> help.
>
> What is indeed confusing is sharing "system" configuration file between
> native and cross- compiler.
Why confusing? There is no "system" configuration file which would
differ between native compilers and cross-compilers (note that
cross-compilers may be installed at system-wide level, e.g. to
/usr/bin/, equally to the native compiler!). There may indeed be a
system-wide configuration file. Then there may be a user specific
configuration file (~/.fpc.cfg on *nix machines) and a project specific
configuration file (./fpc.cfg). Plus there may be a special
configuration file for specific purpose which may be passed to the
compiler using the '@' parameter. All of them allow specifying options
valid for all cases / all compilations, as well as options used only
under particular conditions (e.g. when compiling for a particular
target, or a particular CPU). In addition, there are helpers which allow
specifying certain configuration only once, but with certain parts
changing value depending on the compilation target ($FPCTARGET). You can
easily specify -XR valid for a particular target in your system-wide
configuration file.
> I'd suggest that at least -XR (if not the
> installation directory itself) change the search path for configuration
> file.
.
.
You should better read how the FPC option -XR is specified. What is the
relation between 'Prepend <x> to all linker search paths' (see FPC help)
and location of the configuration file?
Tomas
More information about the fpc-devel
mailing list