On Tue Aug 05 12:42:07 2014, RURBAN wrote:
Show quoted text> CCDLFLAGS are compiler flags needed to compile shared libs, hence the
> DL. See perldoc Config.
No, it's needed to link to a shared library, that's something subtly different.
Show quoted text> LDDLFLAGS missing rpath settings, which are in CCDLFLAGS, looks like
> an upstream bug in Configure.
lddlflags «contains *any* special flags that might need to be passed to $ld to create a shared library suitable for dynamic loading» (emphasis mine). If -R is needed, it should already be there, anything else is a misconfigured system IMO.
Show quoted text> But since those bugs/misinterpretations
> cannot be fixed for already installed perl's, EUMM is the place to fix
> this problem.
No, that is the path to madness. Guessing what people meant with a misconfigured perl is asking for trouble, odds are this will break matters for someone else, even if we don't know yet who.
Show quoted text> But perl5 really has no idea how to properly create executables, as
> they still link with CC and not LD and refused to change that over the
> last decades (they blamed HP-UX), such as needed for llvm link-time
> optimizations. So only clang can be used.
>
> So rather do not talk to p5p, as they have a confused concept over
> compiler vs linker vs loader. My guess is that they think LD stands
> for Link Dynamic, and not Linker Driver.
> $(CC) $(CLDFLAGS) -o $(MINIPERL_EXE)
There's nothing that really stops you from using an cc instead of a cc for $LD AFAIK, but the hint files may not take it into account; I'm pretty sure it can be done, but it may require more effort than desirable.
Show quoted text> They also confuse the linker with the loader and make no attempt to
> describe that ldflags are only valid for passing though compiler
> drivers, not linkers.
>
> perldoc Config:
> "ldflags"
> This variable contains any additional C loader flags desired by the
> user. It is up to the Makefile to use
> this.
That is indeed confusing wording.
Leon