Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

[gentoo-user] Blocking object does not exist...

5 views
Skip to first unread message

meino....@gmx.de

unread,
Jan 1, 2009, 3:20:06 AM1/1/09
to

Hi,

HAPPY NEW YEAR ! :O)


I have got a problem while updateing my Gentoo-Linux-box:

Witzh this command:
emerge Net-Daemon PlRPC DBI rxvt-unicode gstreamer e2fsprogs-libs nano e2fsprogs zynaddsubfx sox boost autounmask cmake smplayer kdelibs wxGTK firehol xulrunner xorg-server vlc


I got (beside a list of updateable/new package) the following warning:

[blocks B ] x11-libs/qt-core ("x11-libs/qt-core" is blocking x11-libs/qt-4.3.3)
[blocks B ] <=x11-libs/qt-4.4.0_alpha:4 ("<=x11-libs/qt-4.4.0_alpha:4" is blocking x11-libs/qt-script-4.4.2, x11-libs/qt-dbus-4.4.2, x11-libs/qt-qt3support-4.4.2, x11-libs/qt-sql-4.4.2, x11-libs/qt-gui-4.4.2, x11-libs/qt-svg-4.4.2, x11-libs/qt-test-4.4.2, x11-libs/qt-core-4.4.2, x11-libs/qt-opengl-4.4.2)

Due to that I decided to do a

emerge -C qt-core

which was answered with:

--- Couldn't find 'qt-core' to unmerge.


How cabn I solve the problem to get blocking packages, which do not
exist?

Thank you very much in advance for any help!
Kind regards,
Meino Cramer


--
Please don't send me any Word- or Powerpoint-Attachments
unless it's absolutely neccessary. - Send simply Text.
See http://www.gnu.org/philosophy/no-word-attachments.html
In a world without fences and walls nobody needs gates and windows.

Alan McKinnon

unread,
Jan 1, 2009, 5:20:06 AM1/1/09
to
On Thursday 01 January 2009 10:10:08 meino....@gmx.de wrote:
> Hi,
>
> HAPPY NEW YEAR ! :O)
>
>
> I have got a problem while updateing my Gentoo-Linux-box:
>
> Witzh this command:
> emerge Net-Daemon PlRPC DBI rxvt-unicode gstreamer e2fsprogs-libs nano
> e2fsprogs zynaddsubfx sox boost autounmask cmake smplayer kdelibs wxGTK
> firehol xulrunner xorg-server vlc
>
>
> I got (beside a list of updateable/new package) the following warning:
>
> [blocks B ] x11-libs/qt-core ("x11-libs/qt-core" is blocking
> x11-libs/qt-4.3.3)
> > [blocks B ] <=x11-libs/qt-4.4.0_alpha:4
> ("<=x11-libs/qt-4.4.0_alpha:4" is blocking x11-libs/qt-script-4.4.2,
> x11-libs/qt-dbus-4.4.2, x11-libs/qt-qt3support-4.4.2,
> x11-libs/qt-sql-4.4.2, x11-libs/qt-gui-4.4.2, x11-libs/qt-svg-4.4.2,
> x11-libs/qt-test-4.4.2, x11-libs/qt-core-4.4.2, x11-libs/qt-opengl-4.4.2)
>
> Due to that I decided to do a
>
> emerge -C qt-core
>
> which was answered with:
>
> --- Couldn't find 'qt-core' to unmerge.
>
>
> How cabn I solve the problem to get blocking packages, which do not
> exist?

Long long ago when I used to fix electronic bits, the best advice I ever ound
for my techies was

"OYFEAL": Open your fscking eyes and look. Some of that would help you a lot
right now :-)

When emerge runs, it builds a tree in memory of what it intends to do, that's
where the blockers come from. So it doesn't have to be what you already have,
it's portage telling you it can't follow your instructions.

Look carefully at the first block. It clearly says that qt-core (no version)
cannot be merged because of a block with qt-4.3.3. The second block says that
all versions of qt less than or equal to 4.4.0_alpha block a bunch of 4.4.2
qt stuff.

What happened here is that qt was split into several small package instead of
one huge one. The new is therefore not compatible with the old and cannot
co-exist, so you must unmerge the old version to be able to put the new ones
on the system. You want:

unmerge -avC qt
emerge -av qt

IIRC, there is a new qt meta package that will install core and others in step
2. If not, just emerge qt-core manually.

emerge's block output is worded confusingly, the exact selection of words can
lead you to believe that you have to do B in order to do A, when actually
it's the other way round. this is because the devs block B in A's ebuild and
also block A in B's ebuild, so that no stupid circumstances can arise. Best
way to wrap your head around it is to open each ebuild, read it and compare
it to the console output. Sooner or later a lightbulb will go on in your
head, at least that's how it worked for me and most others I've helped over
the years.

--
alan dot mckinnon at gmail dot com

Neil Bothwick

unread,
Jan 1, 2009, 5:40:08 AM1/1/09
to
On Thu, 1 Jan 2009 12:18:39 +0200, Alan McKinnon wrote:

> What happened here is that qt was split into several small package
> instead of one huge one. The new is therefore not compatible with the
> old and cannot co-exist, so you must unmerge the old version to be able
> to put the new ones on the system. You want:
>
> unmerge -avC qt
> emerge -av qt

The second command should be unnecessary, just carry on with the emerge
world or whatever, and postage will pull in the required packages.


--
Neil Bothwick

If everything is coming your way then you're in the wrong lane.

signature.asc

Dale

unread,
Jan 1, 2009, 5:40:07 AM1/1/09
to
Alan McKinnon wrote:
>
> emerge's block output is worded confusingly, the exact selection of words can
> lead you to believe that you have to do B in order to do A, when actually
> it's the other way round. this is because the devs block B in A's ebuild and
> also block A in B's ebuild, so that no stupid circumstances can arise. Best
> way to wrap your head around it is to open each ebuild, read it and compare
> it to the console output. Sooner or later a lightbulb will go on in your
> head, at least that's how it worked for me and most others I've helped over
> the years.
>
>
>
>

Amen to the confusing part. It almost always stumps me. I'm glad the
unstable portage sort of deals with this itself, so far at least.

Dale

:-) :-)

Neil Bothwick

unread,
Jan 1, 2009, 5:50:05 AM1/1/09
to
On Thu, 1 Jan 2009 09:10:08 +0100, meino....@gmx.de wrote:

> emerge Net-Daemon PlRPC DBI rxvt-unicode gstreamer e2fsprogs-libs nano
> e2fsprogs zynaddsubfx sox boost autounmask cmake smplayer kdelibs wxGTK
> firehol xulrunner xorg-server vlc

Running this without --oneshot will break your world file


--
Neil Bothwick

My brain's in gear, neutral's a gear ain't it?

signature.asc

William Kenworthy

unread,
Jan 1, 2009, 6:30:09 AM1/1/09
to
Hi Neil - could you explain why? - from man emerge:
--oneshot (-1)
Emerge as normal, but do not add the packages to the world
file for later updating.

This would imply that if you use oneshot, the system wont know about the
package and wont update it - not what you would normally want with any
package except under special circumstances. In fact, unless you have a
package you dont want updated, *EVERY* package on the system *SHOULD* be
in world?

BillK


On Thu, 2009-01-01 at 10:40 +0000, Neil Bothwick wrote:
> On Thu, 1 Jan 2009 09:10:08 +0100, meino....@gmx.de wrote:
>
> > emerge Net-Daemon PlRPC DBI rxvt-unicode gstreamer e2fsprogs-libs nano
> > e2fsprogs zynaddsubfx sox boost autounmask cmake smplayer kdelibs wxGTK
> > firehol xulrunner xorg-server vlc
>
> Running this without --oneshot will break your world file
>
>
--

William Kenworthy <bi...@iinet.net.au>
Home in Perth!

Dirk Heinrichs

unread,
Jan 1, 2009, 6:30:09 AM1/1/09
to
Am Donnerstag, 1. Januar 2009 12:19:44 schrieb William Kenworthy:
> Hi Neil - could you explain why?

Because only packages which are not a dependency for any other package should
be in world. If you install that many packages in one go emerge will put all
of them into world, regardless of their dependencies with each other.

> - from man emerge:
> --oneshot (-1)
>               Emerge as normal, but do not add the packages to the world
> file for later updating.
>
> This would imply that if you use oneshot, the system wont know about the
> package and wont update it

Nope. It wont take them into account for _normal_ update. There's also --deep.

> - not what you would normally want with any
> package except under special circumstances.  In fact, unless you have a

> package you dont want updated, EVERY package on the system SHOULD be
> in world?

Nope, see above. If you have packages you don't want updated, mask the higher
versions.

Bye...

Dirk

signature.asc

Neil Bothwick

unread,
Jan 1, 2009, 7:10:09 AM1/1/09
to
On Thu, 01 Jan 2009 20:19:44 +0900, William Kenworthy wrote:

> Hi Neil - could you explain why? - from man emerge:
> --oneshot (-1)
> Emerge as normal, but do not add the packages to the world
> file for later updating.
>
> This would imply that if you use oneshot, the system wont know about the
> package and wont update it - not what you would normally want with any
> package except under special circumstances. In fact, unless you have a
> package you dont want updated, *EVERY* package on the system *SHOULD* be
> in world?

World should contain only those packages you explicitly want, not their
dependencies. emerge world takes care of dependencies at varying levels
depending on whether you use --deep, --update or neither, but you do not
want them in world. Otherwise, when you unstall packages, you end u with
lots of cruft that emerge --depclean will not identify.


--
Neil Bothwick

When companies ship Styrofoam, what do they pack it in?

signature.asc
0 new messages