View previous topic :: View next topic |
Author |
Message |
52midnight Apprentice
Joined: 20 Mar 2012 Posts: 176 Location: Brisbane AU
|
Posted: Wed Mar 06, 2013 12:28 am Post subject: Resolving slot conflicts during emerge. [SOLVED] |
|
|
My attempt to emerge 'calibre' resulted in a 'slot conflict', but the 'emerge' man page merely suggests using 'package.mask' to resolve the issue. The reported conflicts are pasted in below. My system has udev-171, and I'm unsure why udev-197 is mentioned.
The statement 'ebuild scheduled for merge' suggests that the conflict lies in the current state of the Gentoo repo. Could someone please explain how to resolve this issue?
Quote: |
!!! Multiple package instances within a single package slot have been pulled
!!! into the dependency graph, resulting in a slot conflict:
virtual/udev:0
(virtual/udev-171::gentoo, installed) pulled in by
=virtual/udev-171 required by (sys-auth/consolekit-0.4.5_p20120320-r1::gentoo, installed)
(and 5 more with the same problem)
(virtual/udev-197-r1::gentoo, ebuild scheduled for merge) pulled in by
>=virtual/udev-197-r1 required by (sys-fs/udev-197-r8::gentoo, ebuild scheduled for merge)
(and 2 more with the same problem)
sys-fs/udev:0
(sys-fs/udev-171-r9::gentoo, installed) pulled in by
~sys-fs/udev-171[gudev?,hwdb?,introspection?,keymap?,selinux?] required by (virtual/udev-171::gentoo, installed)
(sys-fs/udev-197-r8::gentoo, ebuild scheduled for merge) pulled in by
>=sys-fs/udev-197-r8[gudev?,hwdb?,introspection?,keymap?,kmod?,selinux?,static-libs?] required by (virtual/udev-197-r1::gentoo, ebuild scheduled for merge)
|
Last edited by 52midnight on Wed Mar 06, 2013 8:50 am; edited 1 time in total |
|
Back to top |
|
|
eyoung100 Veteran
Joined: 23 Jan 2004 Posts: 1428
|
Posted: Wed Mar 06, 2013 12:59 am Post subject: |
|
|
Code: | emerge --sync
emerge --unmerge udev virtual/udev udev-init-scripts consolekit
emerge udev
emerging udev should emerge udev-197-r8 , virtual/udev-197-r1 , udev-init-scripts-23
emerge consolekit
/etc/init.d/udev restart
/etc/init.d/consolekit restart |
This snippet must be done all at once, or you will have an unbootable system.
1. virtual/udev-197-r1 is only satisfied by installing sys-fs/udev-197-r8
2. consolekit is blocking a successful merge because it's dependency is satisfied by virtual/udev-171, which pulls in sys-fs/udev-171
3. Multiple Versions of Virtuals cannot coexist. _________________ The Birth and Growth of Science is the Death and Atrophy of Art -- Unknown
Registerd Linux User #363735
Adopt a Post | Strip Comments| Emerge Wrapper
Last edited by eyoung100 on Wed Mar 06, 2013 1:46 am; edited 1 time in total |
|
Back to top |
|
|
52midnight Apprentice
Joined: 20 Mar 2012 Posts: 176 Location: Brisbane AU
|
Posted: Wed Mar 06, 2013 1:27 am Post subject: |
|
|
Many thanks for that. Another Portage mystery partially revealed! |
|
Back to top |
|
|
52midnight Apprentice
Joined: 20 Mar 2012 Posts: 176 Location: Brisbane AU
|
Posted: Wed Mar 06, 2013 2:43 am Post subject: |
|
|
I did as you suggested, and took your warning seriously, so I did:
># emerge -f udev consolekit
before the unmerge and compilation phases. The system rebooted OK, but Xorg refused to start, complaining that it couldn't find 'libudev.so.0'. I tried:
># emerge libudev
.. but it complained that nothing satisfied the request, and none of the suggestions looked likely. Is there a fix for this?
BTW, the unmerge phase complained that it couldn't find 'udev-init-scripts' to unmerge. May or may not be relevant. |
|
Back to top |
|
|
eyoung100 Veteran
Joined: 23 Jan 2004 Posts: 1428
|
|
Back to top |
|
|
52midnight Apprentice
Joined: 20 Mar 2012 Posts: 176 Location: Brisbane AU
|
Posted: Wed Mar 06, 2013 5:11 am Post subject: |
|
|
> revdep-rebuild
Well, it worked, and for that I'm truly grateful. But what I was hoping to be a canonical installation that I could post on my website as proof of its simplicity has turned into a ritual worthy of Crowley himself, with Hermes Trismegistus presiding over a deep, dank dungeon. I'm feeling the need to don cap and cloak, learn some secret finger-signs,and nail a gryphon skull over my front door with Illegitimi non carborundum scribed in virgin's blood beneath. |
|
Back to top |
|
|
Navar Guru
Joined: 20 Aug 2012 Posts: 355 Location: usa
|
Posted: Wed Mar 06, 2013 6:50 am Post subject: |
|
|
52midnight,
Gentoo can seem intimidating like anything complex that is unfamiliar. The scope and effort of balancing all packages and their immediate and relative dependency trees is a monumental effort the Gentoo dev teams take on. The real work is done behind the scenes. Usually they do an exceptional job and ebuilds (what are acted upon when you wish to emerge a package) all play well with a properly updated system.
Please give a good solid read and/or re-read of the portage maintenance portion of the handbook, as the importance of following this cannot be stressed enough: http://www.gentoo.org/doc/en/handbook/handbook-x86.xml?part=2&chap=1 particularly code listing 3.10 onward.
I won't re-explain all of that, but, had you done the following to update portage's collection of ebuilds:
Noting any important messages after (they're rare), such as news items.
Followed by:
Code: | emerge -avuND world | Which are abbreviated options equivalent to
Code: | emerge --ask --verbose --update --newuse --deep world | As you probably have already seen in the man page for emerge.
This has portage do a fairly thurough update process of your existing installed package base and you would not have ran into any of the problems, udev and all, that started your post. The Gentoo developers count on you doing your part on this. You may have ran into the slight difficulty of needing to emerge the gentoolkit package to get other useful and sometimes needed tools such as revdep-rebuild and equery to automatically determine and begin re-emerging what other dependent packages that link against the udev library would need rebuilt after udev was upgraded. Revdep-rebuild from the gentoolkit package was already mentioned in the documentation link mentioned above. No one is hiding anything from you.
Now you seemed to have synced the tree at some point without fully going through this process. You then wanted to install a large ereader package that had udisks as a dependency, most likely to support interfacing with your usb connection ereader device. Udisks depends on udev and so on. No skull and crossbones, no secret handshakes, just simple dependency layers upon layers of associated programs and libraries that build upon and are depended upon.
Code: | equery g app-text/calibre | E.g. will show you the initial immediate dependencies needed for that program you wanted. Each of those have a tree of subdependencies not shown as well. This is a large part of what portage very nicely juggles for you.
That typical update process is usually 95% of the time for years now the most you need to trouble yourself with other than specifics in elog messages printed per package. When you've followed a proper full world update after a refreshed version of the portage ebuild tree of packages by doing an emerge --sync, you generally will not run into additional difficulties emerging extra packages you want. How often you chose to update your copy of the portage database is entirely up to you (and I will not go into those reasons here), but when you do, make sure you're consistent about the rest of the update process.
If you don't follow best cited practices in the documentation given, then yes, things can and will possibly get ugly eventually and confusing fast. Otherwise it's generally a walk in the park and not a big deal. _________________ (I don't speak for/represent my current employer) |
|
Back to top |
|
|
52midnight Apprentice
Joined: 20 Mar 2012 Posts: 176 Location: Brisbane AU
|
Posted: Wed Mar 06, 2013 7:58 am Post subject: |
|
|
> The scope and effort of balancing all packages and their immediate and relative dependency trees is a monumental effort the Gentoo dev teams take on.
Thanks for the tips. I'm amazed at the scope and complexity of the work that goes into FOSS as a whole, especially since it's voluntary. Gentoo is a remarkable intellectual achievement, and my comments weren't meant to denigrate it - quite the reverse.
I have some nontech friends who rely on my advice for survival in the Linux world. We used to get by well enough with PCLinuxOS, a very robust distro; but since the advent of KDE 4 it's no longer adequate. I've been wanting to suggest Gentoo as the best alternative having used it some years ago, since I've always thought it the best distro for the technically literate. My opinion stands, and now that I'm getting past the initial difficulties of a new installation (your explanation above about a 'world' upgrade being the thing I obviously missed) I think the remaining technical skills will be within their reach.
Thanks again for the time taken to reply. |
|
Back to top |
|
|
eyoung100 Veteran
Joined: 23 Jan 2004 Posts: 1428
|
Posted: Wed Mar 06, 2013 3:22 pm Post subject: |
|
|
Navar wont take the plunge into:
Navar wrote: | How often you chose to update your copy of the portage database is entirely up to you (and I will not go into those reasons here), but when you do, make sure you're consistent about the rest of the update process. | so I'm going to be brave and take a stab at it
Gentoo as a distribution is very time sensitive. More on that below. Gentoo is also a great teaching tool, as you have seen from this experience. The idea for Gentoo has it's roots in another distribution:
Linux From Scratch
Linux From Scratch is also a Source Based Distribution. The main difference here is:
There is no package management in LFS
As such, it's up to you the user to decide your update path, so a user by the Name of Daniel Robbins, or Wiki decided, "You know, I'm going to take this idea one step further". He decided to add a package manager to LFS and emerge was born.
That little blurb brings me to the time sensitive piece. Our portage tree is updated daily by the individual developers who maintain the numerous packages. As such, some Gentoo users argue that Gentoo should be sync'ed and updated once daily. I used to agree with this, but have decided to use a gentler approach. It doesn't matter how often you update, as long as it is consistent and scheduled. This could be daily weekly monthly, every 6 months etc, as long as you stick to your schedule.
Be warned, the longer you wait to update, the harder it gets, which means you will become very good at the Linux adage we all refer to as RTM - Read the Manual. That includes places like this forum. This also means you will become an expert of portage configs. This List is just a few:
- package.keywords
- package.use
- package.mask
- package.unmask
- /etc/make.conf
We're Glad you joined us, and we don't want all these config files and blockers to intimidate you, because in the long run, the headache you have now, will be exchanged with the freedom that you created "YOUR SYSTEM, YOUR WAY." _________________ The Birth and Growth of Science is the Death and Atrophy of Art -- Unknown
Registerd Linux User #363735
Adopt a Post | Strip Comments| Emerge Wrapper |
|
Back to top |
|
|
52midnight Apprentice
Joined: 20 Mar 2012 Posts: 176 Location: Brisbane AU
|
Posted: Wed Mar 06, 2013 6:22 pm Post subject: |
|
|
Thanks for the insightful addition. I'll use the info from both posts in the docn for the new installation procedure I'm preparing for my website. I referred to this in an earlier thread, and although I've not uploaded anything since then, I'm gradually building what I believe could be a useful resource for other newcomers. |
|
Back to top |
|
|
Navar Guru
Joined: 20 Aug 2012 Posts: 355 Location: usa
|
Posted: Thu Mar 07, 2013 4:45 am Post subject: |
|
|
52midnight wrote: | Thanks for the tips. [...] my comments weren't meant to denigrate it - quite the reverse. |
You're welcome, understood no worries and none taken. My intention was to un-intimidate even if it seemed possibly lawyer/doctor-speak in tone ("do! or else!" *queue music*).
BTW, this is a good read if you want history from the horse's mouth:
http://www.gentoo.org/doc/en/articles/making-the-distro-p2.xml _________________ (I don't speak for/represent my current employer) |
|
Back to top |
|
|
eyoung100 Veteran
Joined: 23 Jan 2004 Posts: 1428
|
|
Back to top |
|
|
52midnight Apprentice
Joined: 20 Mar 2012 Posts: 176 Location: Brisbane AU
|
Posted: Thu Mar 07, 2013 5:36 am Post subject: |
|
|
Yes, a good read! I was much disappointed when OpenOffice lost their IP to a sleazy billionaire, even after all the work and warnings by Stallman and others. The GPL and CopyLeft are brilliant concepts. You can learn by your own mistakes; getting others to learn from them is a perennial problem. |
|
Back to top |
|
|
thawn n00b
Joined: 31 Aug 2004 Posts: 41
|
Posted: Sun Aug 24, 2014 5:25 pm Post subject: --backtrack=30 solved the issue for me |
|
|
For me adding "--backtrack=30" to the emerge command solved the issue:
Code: | emerge -uDNav --backtrack=30 world |
|
|
Back to top |
|
|
|
|
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
|
|