Private-libraries in /usr/lib* - invalid soname.

Alec Leamas leamas.alec at gmail.com
Fri Apr 20 14:32:59 UTC 2012


On 04/20/2012 04:08 PM, Kevin Kofler wrote:
> Alec Leamas wrote:
>> Still a newbie I have repeatedly been running into apps which stores
>> private, unversioned libraries into /usr/lib*. The usual symptom is
>> 'invalid-soname' errors rpmlint errors.
> There's no requirement that our packages have no errors from rpmlint.
Agreed.

>   As far
> as I know, invalid-soname does not match any requirement in our packaging
> guidelines.
To my understanding, this is not really clear. From [1] I find ( thanks 
to  tibbs):

> As an additional complication, some software generates unversioned 
> shared objects which are not intended to be used as system libraries. 
> These files are usually plugins or modular functionality specific to 
> an application, and are not located in the ld library paths or cache. 
> This means that they are not located directly in /usr/lib or 
> /usr/lib64, or in a directory listed as a library path in 
> /etc/ld.so.conf (or an /etc/ld.so.conf.d/config file). Usually, these 
> unversioned shared objects can be found in a dedicated subdirectory 
> under /usr/lib or /usr/lib64 (e.g. /usr/lib/purple-2/ is the plugin 
> directory used for libpurple applications). In these cases, the 
> unversioned shared objects do not need to be placed in a -devel package. 
I read those lines as "unversioned libs should  be outside of ld.so's 
paths" - placing them in a -devel package makes no sense. Also, my 
initial discussion on #fedora-devel pointed in the same direction.

However, I have no problem with your overall conclusion from a more 
practical point of view. I just want it cleared out.


>   Unversioned shared libraries are bad, but inventing a library
> version can lead to conflicts with future upstream releases for public
> libraries, and is just not worth it at all for private ones. There's no need
> for a soname version if the library comes from the same package as the only
> user(s) of it.
>
>          Kevin Kofler
Looks fine to me. Anyone else? Should the private lib be filtered in 
this situation?
Thanks for input.!

--alec

[1] http://fedoraproject.org/wiki/Packaging:Guidelines#Devel_Packages



More information about the devel mailing list