[prev in list] [next in list] [prev in thread] [next in thread] 

List:       gluster-devel
Subject:    [Gluster-devel] libgfapi.so rpm location?
From:       justin () gluster ! org (Justin Clift)
Date:       2014-02-17 22:31:01
Message-ID: C64E70D6-200F-4E60-AE50-6E3A10D890D0 () gluster ! org
[Download RAW message or body]

On 17/02/2014, at 10:20 PM, Kaleb S. KEITHLEY wrote:
> On 02/17/2014 05:07 PM, Justin Clift wrote:
> > Hi Kaleb,
> > 
> > Just noticed a small weirdness with the GlusterFS rpms generated from
> > from git master head.
> > 
> > In glusterfs-api rpm:
> > 
> > * /usr/lib64/libgfapi.so.6
> > * /usr/lib64/libgfapi.so.6.0.0
> > 
> > In glusterfs-api-devel rpm:
> > 
> > * /usr/lib64/libgfapi.so
> > 
> > They should all be in the glusterfs-api rpm shouldn't they?
> 
> Nope. This is ELF sharedlib juju.
> 
> At compile time the linker looks for libfoo.so. It reads the SO_NAME, which is \
> libfoo.so.x (or libfoo.so.x.y.z), from libfoo.so (which is just a symlink to \
> libfoo.so.x); Later, at run-time, the dyld loads libfoo.so.x. 
> RPM's packaging rules say that libfoo.so.x (and libfoo.so.x.y.z) belong in the \
> foo.rpm, but the libfoo.so symlink belongs in the foo-devel.rpm. 
> IOW a run-time only install only needs libfoo.so.x or libfoo.so.x.y.z.
> 
> A developer who wants to link with the lib needs the -devel rpm with libfoo.so.
> 
> The purist packagers like this because it keeps the file system from being filled \
> with lib*.so symlinks that aren't needed except by developers. 
> Debian/Ubuntu-style dpkg has similar rules for their -dev dpkgs.

Thanks Kaleb. :)

+ Justin

--
Open Source and Standards @ Red Hat

twitter.com/realjustinclift


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic