Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!

Bug 237197

Summary: mutt: error while loading shared libraries: libslang.so.1: cannot open shared object file: No such file or directory
Product: Gentoo Linux Reporter: Jay Maynard <jmaynard>
Component: Current packagesAssignee: Gentoo Linux bug wranglers <bug-wranglers>
Status: RESOLVED WORKSFORME    
Severity: normal    
Priority: High    
Version: unspecified   
Hardware: All   
OS: Linux   
Whiteboard:
Package list:
Runtime testing required: ---

Description Jay Maynard 2008-09-09 16:25:47 UTC
After upgrading slrn-0.9.8.0 to 0.9.8.1_p1, mutt 1.5.6 gets the following error:

(927) jmaynard@thebrain:~$ mutt
mutt: error while loading shared libraries: libslang.so.1: cannot open shared object file: No such file or directory

The slrn upgrade upgraded sys-libs/slang from 1.4.9 to 2.1.3-r1. This removed the library mutt depends on.




Reproducible: Always



Expected Results:  
The request to emerge slrn-0.9.8.1_p1 should have produced a wrning, or else refused to go, unless mutt was also upgraded.

This is on Alpha. I did not have ~alpha in the keywords list.
Comment 1 Rafał Mużyło 2008-09-09 19:27:22 UTC
revdep-rebuild, please.
You seem to completely misunderstood the problem,
there's no bug in slrn and while slang doesn't warn anymore
about major lib number change, that move was done so long ago,
that by now, most users already gone through it
(slang-2.1.3-r1 was stabled on 09 Mar 2008 for x86, a day later for most of the other arches and 1.4.9-r2 was removed on 15 Jun 2008)
Comment 2 Jay Maynard 2008-09-09 20:46:39 UTC
I don't care what program is listed as having the bug, but upgrading one program should not break another. That's called DLL hell on Windows, and is something Linux should not have. Maybe it's slrn, maybe it's libslang, maybe it's mutt, but something needs fixing (besides the nonexistent revdep-rebuild manpage; what's that?).
Comment 3 Rafał Mużyło 2008-09-09 21:03:59 UTC
1. take a chill pill
2. use 'emerge -upvD world'; you probably failed to use -D,
so you've missed it, when it really happened
3. revdep-rebuild is in app-portage/gentoolkit; a VERY useful tool
to run once in a while (just don't be surprised, 
it sometimes has false positives, like with certain .la files
from gcc with gcj useflag)
Comment 4 Jay Maynard 2008-09-09 21:15:54 UTC
The last time I ran "emerge world", it took me three days to get the system straightened out again. Since this server is one folks depend on (among other things, it's the web and CVS server for Hercules), I'm loath to upgrade it unless it's really necessary.

I'm running revdep-rebuild now; a quick Google turned up the documentation for it. So far, I've had to manually upgrade one package it called out and got confused by. We'll see what else needs fixing the hard way.

If revdep-rebuild is so useful as a tool for Gentoo admins, perhaps it should be a standard part of the system, instead of in an optional package.

IN any event, if having upgrades to one app bring in library upgrades that break other apps is a normal part of Gentoo, I'll shut up now.
Comment 5 Jeroen Roovers (RETIRED) gentoo-dev 2008-09-10 03:02:38 UTC
(In reply to comment #4)
> The last time I ran "emerge world", it took me three days to get the system
> straightened out again. Since this server is one folks depend on (among other
> things, it's the web and CVS server for Hercules), I'm loath to upgrade it
> unless it's really necessary.
> 
> I'm running revdep-rebuild now; a quick Google turned up the documentation for
> it. So far, I've had to manually upgrade one package it called out and got
> confused by. We'll see what else needs fixing the hard way.
> 
> If revdep-rebuild is so useful as a tool for Gentoo admins, perhaps it should
> be a standard part of the system, instead of in an optional package.
> 
> IN any event, if having upgrades to one app bring in library upgrades that
> break other apps is a normal part of Gentoo, I'll shut up now.

Regularly upgrading packages is a must with regard to security and maintainability, and since with Gentoo you create your own distro, it is up to you, the admin, to update all packages to acceptable standards. It also requires you, the admin, to be knowledgeable about soname changes, ABI changes, system compilers, and the runtime configuration of the packages you deploy.

I agree that keeping a system up to date can be harrowing at times, but not doing so is a certain ticket to library hell on any OS. Luckily, Gentoo provides all the tools you need to find and cure these broken dependencies. If you update regularly, and know about tools like revdep-rebuild, it should be no problem to keep updating regularly.

Since this would seem to be an affirmative answer to your last question, I will close this bug now and wish you all the best.