Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!

Bug 114508

Summary: Possible circular dependencies with xmms, xmms-vorbis, flac, ogg and vorbis.
Product: Gentoo Linux Reporter: James <jamespratt>
Component: New packagesAssignee: Luis Medinas (RETIRED) <metalgod>
Status: RESOLVED FIXED    
Severity: minor CC: dirk.heinrichs.ext, jonasmg
Priority: High    
Version: unspecified   
Hardware: All   
OS: Linux   
Whiteboard:
Package list:
Runtime testing required: ---
Bug Depends on: 152472    
Bug Blocks:    

Description James 2005-12-05 00:33:26 UTC
In rebuilding my system from the ground up, I wanted to emerge shntool, with USE
flags "flac ogg vorbis xmms" set, among others, and without flac, libogg,
libvorbis or xmms installed. When I did so, portage attempted to install all of
these packages (as well as a number of others), but in an order which caused it
to bomb out on flac, since with these flags, the build depended on libogg header
files, and libogg was not yet installed. I have been able to reduce the number
of uninstalled packages to 5, so far, and they don't happen to include shntool,
the one I was trying to get in the first place: xmms, libogg, libvorbis,
xmms-vorbis, and flac, so I suspect that the other packages that were part of
the original bomb-out were not a part of the problem, but I leave that to you to
find out...

Reproducible: Always
Steps to Reproduce:
1.With USE flags shown below, and with xmms, xmms-vorbis, libogg, libvorbis, and
flac NOT installed, try doing an "emerge flac -pv". Notice that portage will try
to install flac before it installs libogg.
2. Now try an "emerge xmms-vorbis -pv". Notice that it would try to install both
libogg and libvorbis before it will install xmms, xmms-vorbis, or flac.
3. Now try an "emerge flac". Feel free to clean up the burning rubble (emerge -C
xmms) before trying to figure out why this happened...

Actual Results:  
After step 3, the flac build will error off, with the first error message being
"error: ogg/ogg.h: No such file or directory" If "emerge flac -pv" (with xmms
partially installed - with the USE flags below, it should also install libogg,
libvorbis, and xmms-vorbis) is done now, portage shows that it would install
libogg first, then flac, then stop. Uninstalling xmms will bring back the
incorrect order of xmms, then flac, then libogg, then libvorbis, then xmms-vorbis...

Expected Results:  
It should have installed libogg before it tried to install flac.

I don't know for sure if this failure mode exists on platforms different from
mine, but suspect that it does. I'm definitely running a "bleeding-edge" system
of a sort here (Athlon64, NPTL, GCC-4.0.2, and a tweaked glibc to improve
performance on the Athlon64), but I think that the problem lies within code that
doesn't make much (if any) use of these features... And there's an easy
workaround: emerge libogg before starting the rest of the stuff, and the order
of the rest looks pretty clean! I suspect that putting a dependency (on libogg,
which is required by libvorbis)into the PDEPEND (vorbis section) part of the
xmms ebuild would fix this....

Here's the results of an "emerge info":

Portage 2.0.53 (default-linux/amd64/2005.1, gcc-4.0.2, glibc-2.3.6-r1,
2.6.14-gentoo-r2 x86_64)
=================================================================
System uname: 2.6.14-gentoo-r2 x86_64 AMD Athlon(tm) 64 Processor 2800+
Gentoo Base System version 1.12.0_pre11
dev-lang/python:     2.4.2
sys-apps/sandbox:    1.2.16
sys-devel/autoconf:  2.13, 2.59-r7
sys-devel/automake:  1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r1
sys-devel/binutils:  2.16.1-r1
sys-devel/libtool:   1.5.20-r1
virtual/os-headers:  2.6.11-r3
ACCEPT_KEYWORDS="amd64 ~amd64"
AUTOCLEAN="yes"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-march=k8 -O2 -pipe"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/kde/2/share/config /usr/kde/3/share/config
/usr/lib/X11/xkb /usr/share/config /var/qmail/control"
CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/env.d"
CXXFLAGS="-march=k8 -O2 -pipe"
DISTDIR="/usr/portage/distfiles"
FEATURES="autoconfig distlocks sandbox sfperms strict"
GENTOO_MIRRORS="http://distfiles.gentoo.org
http://distro.ibiblio.org/pub/linux/distributions/gentoo"
MAKEOPTS="-j2"
PKGDIR="/usr/portage/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/usr/local/portage"
SYNC="rsync://rsync.gentoo.org/gentoo-portage"
USE="amd64 X alsa avi berkdb bitmap-fonts bzip2 crypt cups dvd dvdr dvdread eds
emboss encode expat flac foomaticdb fortran gif gmp gnome gpm gstreamer gtk gtk2
imlib jack jpeg kde lcms lzw lzw-tiff mng mp3 mpeg ncurses nptl nptlonly ogg
opengl pam pcre pdflib perl png python qt quicktime readline sdl sndfile spell
ssl tcpd theora tiff truetype truetype-fonts type1-fonts udev usb userlocales
vorbis xml2 xmms xpm xv zlib userland_GNU kernel_linux elibc_glibc"
Unset:  ASFLAGS, CTARGET, LANG, LC_ALL, LDFLAGS, LINGUAS
Comment 1 Scott Testerman 2005-12-06 16:55:11 UTC
I can verify that media-libs/flac-1.1.2-r3 will not emerge without first
emerging libogg.  When libogg is emerged, everything works smoothly.
Comment 2 Diego Elio Pettenò (RETIRED) gentoo-dev 2006-01-03 12:43:52 UTC
*** Bug 117431 has been marked as a duplicate of this bug. ***
Comment 3 Jakub Moc (RETIRED) gentoo-dev 2006-03-06 02:16:00 UTC
*** Bug 125201 has been marked as a duplicate of this bug. ***
Comment 4 Jakub Moc (RETIRED) gentoo-dev 2006-10-23 15:02:27 UTC
xmms and all plugins are now package.masked and will be removed from the tree
in one month. xmms use flag is use.masked -> this is no longer an issue.

Closing.