From: | Andrew Gierth <andrew(at)tao11(dot)riddles(dot)org(dot)uk> |
---|---|
To: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> |
Cc: | pgsql-hackers(at)lists(dot)postgresql(dot)org |
Subject: | Re: LD_LIBRARY_PATH_RPATH |
Date: | 2019-02-01 10:46:35 |
Message-ID: | 87o97v94ge.fsf@news-spur.riddles.org.uk |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
>>>>> "Tom" == Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> writes:
>> At least on my FreeBSD 11 box, the current definition of
>> $(with_temp_install) is not sufficient to ensure that the various .so
>> files are loaded from tmp_install and not from the compiled rpath (which
>> will be the final install dir, which may of course contain old
>> libraries).
>> LD_LIBRARY_PATH_RPATH=1 fixes this (by giving LD_LIBRARY_PATH priority
>> over the DT_RPATH tag in the object).
>> Is this also an issue on any other platforms?
Tom> Hm. Can't reproduce that on current NetBSD or macOS; don't have
Tom> OpenBSD booted up to try right now.
Tom> However, if it helps on some platforms, I can't see much harm in
Tom> adding it in the relevant places. It should be a no-op everywhere
Tom> else.
Oh, I see why it hasn't previously been an issue - the behavior varies
according to whether both DT_RPATH and DT_RUNPATH, or just DT_RPATH, are
defined in the program header; and when I build using default cc
(clang), I get both tags (which makes LD_LIBRARY_PATH_RPATH
unnecessary), whereas when I build using ports gcc using the recommended
additional -Wl,-R option, for whatever reason that ends up setting only
DT_RPATH.
Confusing. Probably safest to add the env var anyway.
--
Andrew (irc:RhodiumToad)
From | Date | Subject | |
---|---|---|---|
Next Message | Dmitry Dolgov | 2019-02-01 11:02:28 | Re: [HACKERS] [PATCH] Generic type subscripting |
Previous Message | amul sul | 2019-02-01 10:37:47 | Re: where clause not working through psql command line client |