On 2016-03-02 16:20, Rainer Weikusat wrote:
>
> The soname mechanism already provides an opportunity for having multiple
> version of the same library installed as these cane use different
> sonames but provide the same set of symbols. In addition to this, the
> symbols themselves can be versioned which enables a single library to
> provide different versions of a function with the same name, eg
>

Yes. All true.

Libraries are installed and then linked using sonames that are symlinked rather than using the full soname. This is the proper way, so that you don't have to recompile and re-link every single time when a minor update is made. The full length sonames aren't used on a day-to-day basis. It is possible that a short form (symlinked) soname can get re-pointed from the distributions chosen version to whatever version was installed last. It's a human oversight, but it can cause problems with the linker.

That is what I was referring to when I made my earlier comment about the linker becoming "confused." It's not a correct answer in programming terms, but it is a very human one.

If you are going to say that installing and linking correctly are the responsibility of the person trying to install an extra library, you would be absolutely correct. The problem that I have observed is that installation of additional versions of software are NOT done correctly the majority of the time. I would contend that package managers should account for use cases where more than one version is requested, or at the very least check the integrity of the system and issue a warning when something has been changed without a proper diversion.

There is an almost universal assumption by the package manager that only one version of a given piece of software or a single dependency chain is ever going to be used in a single install. That assumption is part of the reason why Devuan exists.

Take care!
T.J.
_______________________________________________
Dng mailing list
[email protected]
https://mailinglists.dyne.org/cgi-bin/mailman/listinfo/dng

Reply via email to