[PLUG] running a mixed Debian system

Ian Burrell ian at znark.com
Fri Oct 31 16:27:02 UTC 2003


Michael C. Robinson wrote:
> 
> I think the rpm idea is fine, problem is the 
> dependency database needs to be trainable so 
> that if say I compile something on an rpm 
> system I can find out what packages on that 
> system need to be installed for it to work 
> installing it as a package with those 
> dependencies.  In the case of binaries, if 
> I can find out that binary a works with 
> library b, than I should be able to say 
> that binary a or package a can use library 
> b in the absence of library a.  Another 
> problem is linking libraries, traditionally 
> any upgade of a library should I believe 
> be compatible with programs using the old 
> version potentially fixing some bug or 
> improving performance.  
> 

The dependency tracking is provided by the programs like apt or yum that 
have a view of all the available packages.

Most upgrades of libraries are compatible.  For example, with the most 
recent security patches for openssl, a new shared library replaced the 
old one and every program that used it got the bug fix.

But sometimes there are incompatible changes in the interface.  For 
example, going from glibc 2.2 in Red Hat 7.x to glibc 2.3 in RH 8/9 was 
a big change.  It should be possible to make old programs with the new 
library but it is safer just to use the program with the libary is was 
compiled against.  One of the nice things about the Linux versioned 
libraries is that it is possible to have multiple versions installed.

> For perl-5.6.0 and perl-5.6.1, why can't 
> I install both of them side by side?  The 
> obvious problem is the collision of the 
> perl binary but that's about it.  I guess 
> I ran into this because of statically 
> compiled apache where I kludged by 
> linking the 5.6.0 tree to 5.6.1 tree 
> to satisfy an apache.pm dependency.  
> I wonder if this was a good hack or 
> a bad hack, that would require testing
> which I'm not 100% certain how to do.
> 

You can install them side by side.  Most package systems don't handle 
having two versions of the same thing.  The lib directories are 
separated by version.  Most pure-Perl modules can be shared but binary 
modules have the same compatibility problems as other shared libraries. 
  They only reliably with the version they were compiled against and 
require the same compiler that compiled Perl.

  - Ian

-- 
ian at znark.com
http://www.znark.com/





More information about the PLUG mailing list