Alan McKinnon <alan.mckin...@gmail.com> writes:

> On 19/09/2015 21:36, lee wrote:
>> Hi,
>> 
>> how could I solve these updating problems:
>> 
>> 
>> emerge -j 8 -a --update --newuse --deep --with-bdeps=y @world                
>>                                                                              
>>                                                                       
>> 
>>  * IMPORTANT: 4 news items need reading for repository 'gentoo'.
>>  * Use eselect news read to view new items.
>> 
>> 
>> These are the packages that would be merged, in order:
>> 
>> Calculating dependencies... done!
>> 
>> !!! Multiple package instances within a single package slot have been pulled
>> !!! into the dependency graph, resulting in a slot conflict:
>> 
>> dev-libs/boost:0
>> 
>>   (dev-libs/boost-1.56.0-r1:0/1.56.0::gentoo, ebuild scheduled for merge) 
>> pulled in by
>>     (no parents that aren't satisfied by other packages in this slot)
>> 
>>   (dev-libs/boost-1.55.0-r2:0/1.55.0::gentoo, ebuild scheduled for merge) 
>> pulled in by
>>     dev-libs/boost:0/1.55.0= required by 
>> (dev-libs/librevenge-0.0.2:0/0::gentoo, installed)
>>                   ^^^^^^^^^^                                                 
>>                                                   
>>     (and 2 more with the same problem)
>
> I'm not sure why you are getting this one. Portage is only pulling in
> boost-1.56.0-r1 because it's the latest stable version, but librevenge
> requires something earlier. Portage should therefore shut up and install
> the only real solution - keep boost at 1.55.0

Maybe because it says that there's a slot conflict.  I had another one
of those, and getting rid of it prevents me from having a pdf reader
installed.  I haven't had the need to read a pdf since, but sooner or
later I'll need to be able to.

> Try these possibilities:
>
> emerge =dev-libs/boost-1.55.0-r2

Why this particular version; how did you figure that out?  I read from
the second message that boost doesn't work with itself because
librevenge is installed.  So I could remove librevenge, but a lot of
things depend on it, amongst them libreoffice.

>From there, I don't know what the effects are.  Now libreoffice is still
4.4.1.2, and I would expect it being upgraded to 5.x maybe.  So I would
have to remove boost instead --- IIRC I installed it only to try out
regex_match() and regex_search() --- but removing boost seems a bit
unreasonable, considering that it takes a while to build.  And even with
boost removed, I have no good reason to think that there won't be other
problems, and it leaves the question what to do when I need boost again:
I don't even have a pdf reader ...

So I decided I'd better ask what to do.  It's hard to believe that we
are seriously expected to remove lots of software which we might not be
able to install again just to do an update.  All these conflicts give me
the impression that something in the repo is broken and needs to be
fixed.

> emerge -avuND world
>
> or
>
> emerge -j 8 -a --update --newuse --deep --with-bdeps=n @world
>
> or quickpkg boost, then unmerge it and re-run emerge world.
> Boost is a pain to build so with a quickpkg you can put it back with a
> minimum of effort

Maybe next weekend or so, I don't feel like doing it now and don't
really have the time to.

>> dev-util/boost-build:0
>> 
>>   (dev-util/boost-build-1.55.0:0/0::gentoo, installed) pulled in by
>>     =dev-util/boost-build-1.55* required by 
>> (dev-libs/boost-1.55.0-r2:0/1.55.0::gentoo, ebuild scheduled for merge)
>>     ^                     ^^^^^                                              
>>                                                                              
>>                 
>> 
>>   (dev-util/boost-build-1.56.0:0/0::gentoo, ebuild scheduled for merge) 
>> pulled in by
>>     =dev-util/boost-build-1.56* required by 
>> (dev-libs/boost-1.56.0-r1:0/1.56.0::gentoo, ebuild scheduled for merge)
>>     ^                     ^^^^^                                              
>>                                                                              
>>                 
>
> This is a consequence of boost.
> Fix the boost issue and this one goes away

I thought it might.  It's yet another message telling me that boost
doesn't work with boost.

>> media-video/ffmpeg:0
>> 
>>   (media-video/ffmpeg-2.6.3:0/54.56.56::gentoo, ebuild scheduled for merge) 
>> pulled in by
>>     (no parents that aren't satisfied by other packages in this slot)
>> 
>>   (media-video/ffmpeg-2.2.14:0/52.55.55::gentoo, installed) pulled in by
>>     media-video/ffmpeg:0/52.55.55=[vdpau] required by 
>> (media-libs/mlt-0.9.0:0/0::gentoo, installed)
>>                       ^^^^^^^^^^^^                                           
>>                                                           
>
> Similar to boost. try a similar approach

I tried 'emerge -j 8 -a --update --newuse --deep --with-bdeps=y ffmpeg'
to upgrade ffmpeg only because it seemed to be smallest problem.  But
no, that requires quite a lot of packages and gives me a lengthy list
which looks like some kind of dependency hell.  So that was a no-go,
too.

Sure, I could also remove ffmpeg, but how do I know that I can reinstall
it after upgrading?

>> !!! The ebuild selected to satisfy "sci-libs/hdf5" has unmet requirements.
>> - sci-libs/hdf5-1.8.14-r1::gentoo USE="cxx fortran threads zlib -debug 
>> -examples -fortran2003 -mpi -static-libs -szip"
>> 
>>   The following REQUIRED_USE flag constraints are unsatisfied:
>>     threads? ( !cxx !fortran )
>
> Come on, the problem is as clear as daylight and stated right there in
> the output:
>
> If you have threads in USE for hdf5, then you cannot have cxx and/or
> fortran also in USE for hdf5
>
> echo "=sci-libs/hdf5-1.8.14-r1 -cxx -fortran" >>
> /etc/portage/package.use/package.use

I gathered that much, but I didn't feel like trying to find out whether
it's better to disable threads or cxx and fortran because of the other
problems.  hdf5 was pulled in because of dependencies and not because I
installed it, so I didn't check its USE flags to begin with.

>> I could remove boost (and maybe reinstall it later), but I would like to
>> keep ffmpeg.  hdf5 apparently goes back to having blender installed,
>> which I would also like to keep.  And apparently, I would have to remove
>> libreoffice before I could update.
>
> What does libreoffice have to do with this?

It depends on librevenge.

>> Why can't we just update like we can with any other distribution but
>> have to run into dependency problems all the time instead?
>
> You fail to understand how gentoo works. At no time did Gentoo ever
> guarantee that updates would work like binary distros and the process
> would be trouble free. Quite the opposite - Gentoo is upfront in telling
> you that there will always be update issues and you are the person to
> solve them.

It never told me that.

> This is because of how Gentoo works. With a binary distro, there is only
> one variant of a package. If package A depends on ldap, and cifs, and
> kerberos and nfs, and you don't want any of those then that is tough
> shit because you are going to get them. And you are going to get them
> because the package maintainer said you are going to get them.

That's one of the things that bothers me with binary distributions.

> Gentoo gives you the choice, and sometimes your choices interfere with
> other choices you make. Now you get to decide.
>
> Binary distros run into the same problems as above, and the package
> maintainer has to solve them. When that is done, the package gets pushed
> out and you don't see what it took. You also don't have any choice.
>
> In Gentoo, YOU have the role that a maintainer has on Fedora, YOU get to
> find out how to solve the problem and YOU get to implement it. That is
> the inevitable side-effect of having choice.

Where and how do the above messages give me choices?  They are telling
me that boost doesn't work with itself, that I cannot upgrade ffmpeg and
that I need to dis- or enable USE flags I've never touched.  I can make
a wild guess that removing boost and ffmpeg /might/ solve the problem,
and from my experience with the pdf reader, I can only assume that
chances that I cannot reinstall either after upgrading are pretty good.
My conclusion is that something in the repos might be broken because if
it wasn't, I wouldn't have these problems.

So my choices are to try to somehow force an upgrade and be left with a
non-working system, or to wait until the problems are fixed, or to ask
for help.

Asking for help turns out that I don't really have a choice because I
can either try to somehow force an upgrade and take the risk of being
left with a non-working system (because Gentoo gives me choices: perhaps
you can see the irony here), or not upgrade at all.

>> What do I do when I need to update /right now/ and find myself being
>> blocked with cryptic messages like the above that leave me stranded?
>> Once I used 'emerge --sync', there is no way to turn it back to continue
>> to be able to install software if needed when the update cannot be
>> performed.  Updates simply need to work, there's no way around that.
>
> You seem unwilling to do what it takes to run Gentoo properly. I suggest
> you delete your Gentoo systems and install Fedora instead. Gentoo is
> obviously not for you.

That is a really wild assumption you're making, to put it nicely.

Besides, IMO Fedora is run by stupid fascists who believe they can
dictate people what to think and take over the world --- which is
something I don't want to have anything to do with --- and I don't want
systemd, either, which appears to come along remarkably similar lines.
You'd have to suggest a better alternative, one that is better than
Gentoo.

Other than that, can't you imagine that there might be room for
improvement?  Like a way to undo an 'emerge --sync' and messages that
are more informative, or providing the user with actual choices that
would solve the problem and let them decide which solution they want
(think of aptitude, which Debian has)?

Or would you rather say that Gentoo seems unwilling to do what it takes
to make it easier to upgrade?  Yeah, I know, developer resources are
limited, but so are mine.


-- 
Again we must be afraid of speaking of daemons for fear that daemons
might swallow us.  Finally, this fear has become reasonable.

Reply via email to