Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 249901 - xine-lib and transcode pull two versions of imagemagick 6.4.4.6 by xine-lib , 6.4.5.7-r1 by transcode
Summary: xine-lib and transcode pull two versions of imagemagick 6.4.4.6 by xine-lib ,...
Status: RESOLVED DUPLICATE of bug 247292
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: New packages (show other bugs)
Hardware: AMD64 Linux
: High normal (vote)
Assignee: Gentoo Linux bug wranglers
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2008-12-05 09:23 UTC by ~S
Modified: 2008-12-12 10:35 UTC (History)
2 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description ~S 2008-12-05 09:23:00 UTC
i have xine-gui (amarok pulls xine-lib, so i added the gui) and mplayer in my world list
so i guess the xine-gui/amarok pulls xine-lib which has following USE flags
# emerge -pv xine-lib

These are the packages that would be merged, in order:

Calculating dependencies... done!
[ebuild  N    ] media-gfx/imagemagick-6.4.4.6  USE="X bzip2 corefonts jbig jpeg jpeg2k openmp perl png svg tiff truetype wmf xml zlib -djvu -doc -fontconfig -fpx -graphviz -gs -hdri -lcms -nocxx -openexr -q32 -q8 -raw" 0 kB
[ebuild   R   ] media-libs/xine-lib-1.1.15-r1  USE="X a52 aac aalib alsa dts dvd flac gtk imagemagick mad mng modplug musepack nls opengl speex theora truetype v4l vcd vorbis wavpack xcb xv xvmc (-altivec) -arts -debug -directfb -dxr3 -esd -fbcon -gnome -ipv6 -jack -libcaca -mmap -oss -pulseaudio (-real*) -samba -sdl (-vidix) (-vis) (-win32codecs) -xinerama" 0 kB


while the mplayer/mencoder is pulling transcode (or is it ffmpeg?) and the transcode has following use flags

# emerge -pv transcode
These are the packages that would be merged, in order:

Calculating dependencies... done!
[ebuild  N    ] media-gfx/imagemagick-6.4.5.7-r1  USE="X bzip2 corefonts jbig jpeg jpeg2k openmp perl png svg tiff truetype wmf xml zlib -djvu -doc -fontconfig -fpx -graphviz -gs -hdri -lcms -nocxx -openexr -q32 -q8 -raw" 0 kB
[ebuild     U ] media-video/transcode-1.0.7 [1.0.7_rc1] USE="X a52 dv dvdread iconv imagemagick jpeg mmx mp3 mpeg ogg quicktime sse sse2 theora truetype vorbis xml xvid -3dnow (-altivec) -extrafilters -fame -lzo -mjpeg -network -nuv -oss -sdl -v4l2" 0 kB

so as you see, when I do emerge -uavDN world, both versions of imagemagick are pulled imagemagick-6.4.5.7-r1 by transcode, and imagemagick-6.4.4.6 by xine-lib

and following error appears-

!!! Multiple package instances within a single package slot have been pulled
!!! into the dependency graph, resulting in a slot conflict:

media-gfx/imagemagick:0

  ('ebuild', '/', 'media-gfx/imagemagick-6.4.4.6', 'merge') pulled in by
    ('ebuild', '/', 'media-libs/xine-lib-1.1.15-r1', 'merge')

  ('ebuild', '/', 'media-gfx/imagemagick-6.4.5.7-r1', 'merge') pulled in by
    ('ebuild', '/', 'media-video/transcode-1.0.7', 'merge')


It may be possible to solve this problem by using package.mask.....
[/snip]

I have added following to /etc/portage/package.mask

>=media-gfx/imagemagick-6.4.4.6-r1

and the issue is resolved for now i.e. I can do emerge -uavDN world which installs imagemagick-6.4.4.6
but this will imply that I won't be upgrading my imagemagick at all

can somebody help me here?
maybe i can put the two versions in two different slots?
but is it necessary??
are these two versions so different that i should install each one of them??

~S

Reproducible: Always

Steps to Reproduce:
1.emerge -uavDN world
Actual Results:  
!!! Multiple package instances within a single package slot have been pulled
!!! into the dependency graph, resulting in a slot conflict:

media-gfx/imagemagick:0

  ('ebuild', '/', 'media-gfx/imagemagick-6.4.4.6-r1', 'merge') pulled in by
    ('ebuild', '/', 'media-libs/xine-lib-1.1.15-r1', 'merge')

  ('ebuild', '/', 'media-gfx/imagemagick-6.4.5.7-r1', 'merge') pulled in by
    ('ebuild', '/', 'media-video/transcode-1.0.7', 'merge')


It may be possible to solve this problem by....[/snip]

Expected Results:  
emerge should install proper version of imagemagick

maybe there is something wrong with the USE flags??
i don't know... kindly have a look at the USE flags please
Comment 1 Zac Medico gentoo-dev 2008-12-05 10:04:07 UTC

*** This bug has been marked as a duplicate of bug 247292 ***
Comment 2 Davide Pesavento (RETIRED) gentoo-dev 2008-12-09 00:53:34 UTC
Zac, I don't think this is strictly a dupe. Of course a solution to bug #247292 will make this problem disappear too, but IMHO this may be seen as a portage resolver limitation. I'll try to explain a bit better. (i'm running ~amd64 and using portage-2.2_rc17)

Currently my tree offers the following imagemagick versions:
6.3.3  (~)6.3.4  6.3.5.10  6.4.0.6  6.4.4.6  (~)6.4.4.6-r1  (~)6.4.5.7  (~)6.4.5.7-r1

installed version is 6.4.4.6-r1

$ equery depends imagemagick
[ Searching for packages depending on imagemagick... ]
app-office/openoffice-2.4.1 (media-gfx/imagemagick)
gnome-extra/libgsf-1.14.10 (gnome? media-gfx/imagemagick)
media-libs/gegl-0.0.20 (doc? media-gfx/imagemagick)
media-libs/xine-lib-1.1.15-r1 (imagemagick? <media-gfx/imagemagick-6.4.5.7)
media-video/transcode-1.0.7 (imagemagick? >=media-gfx/imagemagick-6.4.0.6)

Doing the intersection of all the version requirements, I obtain that each version between 6.4.0.6 included and 6.4.5.7 excluded satisfies the dependency atoms for every installed package. Currently installed version (6.4.4.6-r1) belongs to that interval, and it's also the highest version belonging to the allowed interval that's also in portage. The resolver should realize this fact and leave imagemagick alone, because deps are already satisfied!
Comment 3 Zac Medico gentoo-dev 2008-12-09 01:51:58 UTC
(In reply to comment #2)
> Doing the intersection of all the version requirements, I obtain that each
> version between 6.4.0.6 included and 6.4.5.7 excluded satisfies the dependency
> atoms for every installed package. Currently installed version (6.4.4.6-r1)
> belongs to that interval, and it's also the highest version belonging to the
> allowed interval that's also in portage. The resolver should realize this fact
> and leave imagemagick alone, because deps are already satisfied!

You are correct. It is bug #1343 and I haven't implemented a fix for it yet. In order to solve cases like this automatically, the resolver needs to do backtracking whenever two packages get pulled into the same slot like this. If we knew all of the atoms in the beginning then we could easily do an intersection of all the atoms. However, we don't know all of the atoms until we've chosen the packages. So, the problem is solved by searching through a number of combinations until a combination is found that satisfies all of the dependencies.
Comment 4 ~S 2008-12-12 03:48:30 UTC
when will i know that this bug is fixed
so i can remove the portage.mask to auto-upgrade imgagemagick in future?

~S
Comment 5 Davide Pesavento (RETIRED) gentoo-dev 2008-12-12 10:35:03 UTC
(In reply to comment #4)
> when will i know that this bug is fixed
> so i can remove the portage.mask to auto-upgrade imgagemagick in future?
> 
> ~S
> 

I think you're probably interested in bug #247292