[Libreoffice] problems with scp2

Bjoern Michaelsen bjoern.michaelsen at canonical.com
Sat Jul 30 15:32:03 PDT 2011


Hi Stephan,

On Sat, 30 Jul 2011 10:45:03 +0200
Stephan Bergmann
<stephan.bergmann.secondary at googlemail.com>
wrote:

> No. While linking wants the unversioned libFOO.so (thanks to passing
> them as -lFOO to the linker), running the unit tests wants the
> versioned libFOO.so.3 (thanks to the SONAME).

Im glad to have told Matúš to put this on the ML, it deserves a more
thorough investigation. ;)

Well, since gbuild as of now has no notion of versioned SONAMES or
filenames(1), I assume the Matúš-migrated salhelper module would create
a lib with name libuno_salhelpergcc3.so and no explicit SONAME (since no
--soname switches are used). "readelf -a| grep SONAME" on it would
return nothing. Given that, every library linked against that lib (in a
BFS) would link against the (fallback) unversioned filename, and that
would work fine in the build and out of it.

Using such a lib in the solver should not be a problem for the build.
However, even if it would be easily possible to add the SONAME upon
installation, it would be quite an ugly hack. So does it hurt to have
unversioned/missing SONAMEs in the installation?

Well, if we would symlink in the installation as before, old
external clients wouldnt be hurt, as they still find their libs. But
newly created external libraries would be created linking against an
unversioned/missing SONAME (because they would fall back to the resolved
filename). Would that hurt? Right now, from a practical point of view,
I guess: no. No linux distro supports installing different versions of
the product, let alone from different major releases. So if I am not
mistaken, the benefit of versioned SONAMEs -- while being the Right
Thing(tm) -- are mostly theoretical as of now.

Of course, the magic is all in the words "as of now" -- requirements
might change. 

Oh, and btw: welcome and nice to have your comments on this list!

Best,

Bjoern


(1) $(call gb_Library_get_filename,salhelper) returns
    libuno_salhelpergcc3.so

-- 
https://launchpad.net/~bjoern-michaelsen




More information about the LibreOffice mailing list