[phobos] New Linux phobos shared library

H. S. Teoh hsteoh at quickfur.ath.cx
Tue Jul 9 06:49:44 PDT 2013


On Tue, Jul 09, 2013 at 06:52:44AM +0200, Jordi Sayol wrote:
>  From dmd v2.063, release zip file includes Linux phobos shared
>  libraries. As shared libraries are needed at runtime too, we should
>  allow to install multiple versions of phobos shared libs. at same
>  time. If not, every program compiled against it will be forced to be
>  recompiled every new dmd/phobos release. To avoid this, phobos shared
>  libs. should include some version number on its name.
> 
> I propose to name the shared phobos library as "libphobos2.so.0.nn.0",
> where "nn" is the current dmd version. The last zero is just for
> bug/regression fixes.
> 
> As phobos changes its interface (almost) every new release, I propose
> to set its SONAME to "libphobos2.so.0.nn", so when phobos become
> stable we can change the library name to "libphobos2.so.1.0.0" and its
> SONAME to "libphobos2.so.1".
> 
> Some info about Linux shared libraries:
> http://tldp.org/HOWTO/Program-Library-HOWTO/shared-libraries.html
[...]

+1.

Shared library breakages are a royal pain in the neck. We should try to
get them right earlier rather than later. I'd say file a high-priority
bug in the bugtracker, if it hasn't already been.

Basically, the library needs to have a different soname EVERYTIME its
ABI changes (not just API, mind you). Anything other than that will lead
to pain and angry users.


T

-- 
Let's call it an accidental feature. -- Larry Wall


More information about the Digitalmars-d mailing list