Locating shared libraries

Stefan O'Rear stefanor at cox.net
Mon Jun 18 18:06:56 EDT 2007


On Mon, Jun 18, 2007 at 11:56:57AM -0400, Peter Tanski wrote:
> Now each GHC-Haskell-based program installer would search /usr/local/ 
> lib for, say, libHSrts_dyn-6.6.1.dylib and install that version if  
> necessary.  What happens on uninstall?  The same thing you get on  
> Windows when you have another program using a particular .DLL--the  
> uninstall of that version of the library would fail but for unix  
> systems _only_ if you also have another program using at while you  
> are doing the uninstall.  So if you did not break everything on each  
> install, eventually you have a complete mess of different versions of  
> GHC libraries in /usr/local/lib that may have no current use but at  
> one time were used for several GHC-Haskell-based programs that have  
> now been upgraded to use something different.  Hopefully those who  
> distributed the binary programs adopted a convention of using the  
> full version of the library instead of symlinking libHSrts_dyn-6.6.1  
> to libHSrts_dyn, or as a user several of your older programs might  
> break after a later one installed a new version of the library and  
> symlinked that the new version...
> 
> That is why I think your idea was good: put everything into distinct  
> directories.

Debian's high level package manager will automatically garbage collect
dependancies, such that every package on your system is either manually
selected for install or a dependant of one.  Thus there is no library
leak problem.

Stefan


More information about the Glasgow-haskell-users mailing list