Linker problems with system vs bundled libraries (RPATH vs RUNPATH)

Michael Stahl mst at libreoffice.org
Mon Jan 28 14:08:44 UTC 2019


On 25.01.19 15:06, Luboš Luňák wrote:
> On Friday 25 of January 2019, Miklos Vajna wrote:
>> On Fri, Jan 25, 2019 at 01:08:51PM +0100, Luboš Luňák
> <l.lunak at collabora.com> wrote:
>>>   No, those messages are not the errors that cause the failures, I listed
>>> it to show that the system lib is used even though there's the bundled
>>> one.
>>
>> The DLP libs had this problem as well, and these days we just patch the
>> externals to have a different .so name, see e.g.:
>>
>> external/libodfgen/libodfgen-bundled-soname.patch.0
>>
>> (Other DLP libs are built statically.)
>>
>> Would it be an option to do the same for the GPG stuff?
> 
>   I'm not sure. That'd make soffice.bin load both instances of the lib, which
> would solve the problem of some symbols missing. But having two different
> versions of the same lib could possibly also cause clashes between them,
> since ELF interposition could make e.g. libgpgme bind some symbols to the
> system lib and other to the bundled lib (I've actually tried that, see the
> attachment). Which we could either ignore (I don't know likely is that to
> cause a real problem) or we'd need to namespace/version the whole library
> (which I don't know how much work that'd be).

hope this will help:

https://gerrit.libreoffice.org/#/c/67012/

the idea is we use different symbol version for everything so LO libs 
call into bundled library, system libs call into system library.

haven't tested it though, just make check runs fine here...


More information about the LibreOffice mailing list