Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
Any trick to resolve lots of slot conflicts?
View unanswered posts
View posts from last 24 hours

 
Reply to topic    Gentoo Forums Forum Index Portage & Programming
View previous topic :: View next topic  
Author Message
twork
Apprentice
Apprentice


Joined: 28 Jul 2006
Posts: 183

PostPosted: Sat Dec 20, 2014 5:46 pm    Post subject: Any trick to resolve lots of slot conflicts? Reply with quote

I have a system that's been stuck on several upgrade problems for a long time. (Really what it needs is a fresh rebuild but that can't happen yet.) Right now my immediate problem is that Portage can't resolve a bunch of dependencies, apparently because of slot conflicts that I don't understand how to fix.

I run into this problem a lot. It must be a FAQ but so far I haven't found the answer. Example:
Code:
(...)
  (x11-libs/gtk+-3.10.8::gentoo, installed) pulled in by
    (no parents that aren't satisfied by other packages in this slot)

  (x11-libs/gtk+-3.12.2::gentoo, ebuild scheduled for merge) pulled in by
    >=x11-libs/gtk+-3.11.1:3 required by (gnome-base/gnome-control-center-3.12.1-r1::gentoo, ebuild scheduled for merge)
(...)
Okay, so nothing depends on [package-N], other stuff does depend on [package-N+1], it looks to me like they're in the same slot(?), so what's the trouble? Why doesn't it just get upgraded like anything else?

And of course, what's the fix? Especially given that I have a bunch of these, I hope there's some way to automate the process.

Thanks.
Back to top
View user's profile Send private message
NeddySeagoon
Administrator
Administrator


Joined: 05 Jul 2003
Posts: 54236
Location: 56N 3W

PostPosted: Sat Dec 20, 2014 6:03 pm    Post subject: Reply with quote

twork,

Tell portage to try harder. --backtrack=30

-- edit --

Also if you have a lot of "guff" lying about, in the form of orphans, they can depend on things you don't otherwise need.
Code:
emerge --depclean -p
will tell you about things that are installed with no good reason.
Do review the list before you just rip it all out. -- depclean has been known to get it wrong.
_________________
Regards,

NeddySeagoon

Computer users fall into two groups:-
those that do backups
those that have never had a hard drive fail.
Back to top
View user's profile Send private message
Ant P.
Watchman
Watchman


Joined: 18 Apr 2009
Posts: 6920

PostPosted: Sat Dec 20, 2014 6:24 pm    Post subject: Reply with quote

I usually fix this kind of thing by yanking out old packages manually until it works, or at least produces a sensible error. I'm _NOT_ recommending you should do that, but it's an option.

If you have a lot of updates it might be better to start with @system instead of trying to deal with it all at once.
Back to top
View user's profile Send private message
twork
Apprentice
Apprentice


Joined: 28 Jul 2006
Posts: 183

PostPosted: Sat Dec 20, 2014 7:10 pm    Post subject: Reply with quote

Thanks Neddy, as always.

I guess I should have provided more context. My machine is *really* horked up...

Chapter 1: I'm trying to clear out a bunch of stuff I don't need. As one swath I did:
Code:
% sudo emerge -avC `equery l -f gnome`
...which I knew would leave me with a lot of unsatisfied deps. But a monkey has to start somewhere, and my plan was to hunt down anything left unsatisfied, and kill that too, before moving on to the next swath of kruft.

Chapter 2: For months now, every time I emerge anything I've gotten the message:
Code:
!!! existing preserved libs:
[...many, many paths...]
Use emerge @preserved-rebuild to rebuild packages using these libraries
...and no amount of revdep-rebuild'ing has made that go away. Or packages that want the named libraries have failed to rebuild, or some other woe. Like I said, this is a sick box and that's part of why I'm trying to trim it way down.

Chapter 3: Needless to say, at this stage depclean only yells at me.

Chapter 4: ...aaand, then I'm off into dependency grief where packages USE udev, systemd needs that, I thought I could live without systemd but apparently not, and we start to see why I went off in this adventure in the first place, months ago...

My real goal is to turn this hardware from a machine that I actually use, into a VM host that has very little running directly (note: 2014 is nearly gone), but in the meantime I actually sort of rely on the poor girl, aged though she be.

That install CD is looking better by the day. Grumble.
Back to top
View user's profile Send private message
The Doctor
Moderator
Moderator


Joined: 27 Jul 2010
Posts: 2678

PostPosted: Sat Dec 20, 2014 7:21 pm    Post subject: Reply with quote

Sometimes it works to emerge -auv <package list> where the list doesn't cause the blocks. Keep going as far as possible and sometimes you get lucky and it works itself out.

Trying backtrack=42 first is a good idea because it is a much more elegant solution.

Quote:
and no amount of revdep-rebuild'ing has made that go away.
Read the output. The paths are PRESERVED so revdep won't find anything because nothing has been broken yet. You need to use emerge @preserved-rebuild quite literally.

This will probably solve an entire host of other problems you are experiencing.
_________________
First things first, but not necessarily in that order.

Apologies if I take a while to respond. I'm currently working on the dematerialization circuit for my blue box.


Last edited by The Doctor on Sat Dec 20, 2014 7:28 pm; edited 1 time in total
Back to top
View user's profile Send private message
twork
Apprentice
Apprentice


Joined: 28 Jul 2006
Posts: 183

PostPosted: Sat Dec 20, 2014 7:22 pm    Post subject: Reply with quote

Ant P. wrote:
I usually fix this kind of thing by yanking out old packages manually until it works, or at least produces a sensible error. I'm _NOT_ recommending you should do that, but it's an option.
Yep...

Ant P. wrote:
If you have a lot of updates it might be better to start with @system instead of trying to deal with it all at once.
Did that. It ran fine. But subsequently, no joy.
Back to top
View user's profile Send private message
twork
Apprentice
Apprentice


Joined: 28 Jul 2006
Posts: 183

PostPosted: Sat Dec 20, 2014 7:44 pm    Post subject: Reply with quote

Thanks first for the Pertwee photo. Still the best, less that silly car. Now then...
The Doctor wrote:
Sometimes it works to emerge -auv <package list> where the list doesn't cause the blocks. Keep going as far as possible and sometimes you get lucky and it works itself out.
Been trying that, and it gets me somewhere sometimes. Hope persists but I keep hitting dead ends. Agreed re. --backtrace, but I've done more damage than it can handle at this point.

Quote:
Quote:
and no amount of revdep-rebuild'ing has made that go away.
Read the output. The paths are PRESERVED so revdep won't find anything because nothing has been broken yet. You need to use emerge @preserved-rebuild quite literally.
Yeah... I didn't mention that, but I've been trying it too. That does unearth some packages that I don't want, and it gripes about absence of udev, and then I'm off on some other chase.

...I do feel like I'm making progress though. The latest run with --backtrack turned up some packages to yank. I need to step away from the project right now but hope persists. (Ah silly, silly hope, you scamp.)

Thanks all for the tips.
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Portage & Programming All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum