Re: Removing link-time cross-module refs in contrib

From: Andres Freund <andres(at)anarazel(dot)de>
To: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
Cc: pgsql-hackers(at)postgresql(dot)org
Subject: Re: Removing link-time cross-module refs in contrib
Date: 2016-10-03 19:55:16
Message-ID: 20161003195516.tdprkclgwaw3cj36@alap3.anarazel.de
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On 2016-10-03 15:40:12 -0400, Tom Lane wrote:
> Andres Freund <andres(at)anarazel(dot)de> writes:
> > On 2016-10-03 14:49:20 -0400, Tom Lane wrote:
> >> ... ignoring unresolved symbols in shlibs is the default
> >> on Linux, and while you can make it throw errors, that just leads to
> >> errors for all the references into the core backend. Not very helpful.
> >> AFAICS, GNU ld lacks any equivalent to macOS' -bundle_loader switch,
> >> which is what we'd need to make this usable.
>
> > Hm. I wonder if it's actually possible to link against the main backend,
> > when compiling as a position-independent-executable...
>
> I tried that, didn't work.

Too bad :(. The only way I could see checking this properly would be
to LD_PRELOAD the .so against postgres, at build time. That should then
error out if there's undefined symbols; without the issue that _PG_init
might error out for some reason.

Regards,

Andres

In response to

Browse pgsql-hackers by date

  From Date Subject
Next Message Pavel Stehule 2016-10-03 20:00:16 Re: Showing parallel status in \df+
Previous Message Gilles Darold 2016-10-03 19:54:41 Re: proposal: psql \setfileref