[Mageia-dev] Utter frustration

Frank Griffin ftg at roadrunner.com
Fri Nov 30 13:26:18 CET 2012


On 11/30/2012 07:13 AM, Anne Wilson wrote:
>
> Before doing all that, can you explain the significance of the
> suffixes here?
>
> ls /usr/lib/ | grep powerdevil
> libpowerdevilconfigcommonprivate.so.4@
> libpowerdevilconfigcommonprivate.so.4.10.0*
> libpowerdevilcore.so.0@
> libpowerdevilcore.so.0.1.0*
> libpowerdevilui.so.4@
> libpowerdevilui.so.4.10.0*
>
Library naming conventions use several, actual version, e. g. 4.10.0, 
major version, e. g. 4, and a generic name, e. g. libxxx.so.  The last 
two are usually symlinked to the first.

The major version usually signals an ABI difference or some other major 
difference, e. g. new function, from the previous version. The actual 
version changes whenever any change is made.  Developers use the major 
version if their code is dependent on that major version, but just use 
the generic name if any version will do.

In this way, the majority of packages using the library just ask for 
libxxx.so, and don't have to be rebuilt or have their makefiles or spec 
modified when the library changes.  A few packages, which are dependent 
on a specific version, ask for libxxx.so.N (or higher), and these have 
to be changed when the major version they require is released.  A very 
very few packages are dependent on the actual version, and these may 
have to change more often.


More information about the Mageia-dev mailing list