Bug List: (This bug is not in your last search results)   Show last search results      Search page      Enter new bug
Bug#: 220341
Alias:
Product:
Component:
Status: RESOLVED
Resolution: FIXED
Assigned To: Portage team <dev-portage@gentoo.org>
Hardware:
OS:
Version:
Priority:
Severity:
Reporter: Darren Dale <dsdale24@gmail.com>
Add CC:
CC:
Remove selected CCs
URL:
Summary:
Status Whiteboard:
Keywords:

Filename Description Type Creator Created Size Actions
debug.log output of emerge -uDNvp --debug world text/plain Darren Dale 2008-05-06 12:06 0000 817.15 KB Details
multislot.patch detect and prevent multislot package reinstallation due to slot dependencies patch Zac Medico 2008-05-08 17:46 0000 905 bytes Details | Diff
Create a New Attachment (proposed patch, testcase, etc.) View All

Bug 220341 depends on: Show dependency tree
Bug 220341 blocks: 216231
Votes: 0    Show votes for this bug    Vote for this bug

Additional Comments: (this is where you put emerge --info)


Not eligible to see or edit group visibility for this bug.






View Bug Activity   |   Format For Printing   |   XML   |   Clone This Bug


Description:   Opened: 2008-05-05 10:23 0000
Every time I run "emerge -uDp world", portage wants to remerge gcc-4.2.3:

$ sudo emerge -uDNvp world

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

Calculating dependencies... done!
[ebuild     U ] sys-apps/gawk-3.1.6 [3.1.5-r5] USE="-nls" 1,818 kB
[ebuild     U ] media-libs/libid3tag-0.15.1b-r1 [0.15.1b] USE="-debug" 331 kB
[ebuild     U ] sys-apps/texinfo-4.12 [4.11-r1] USE="-nls -static" 1,353 kB
[ebuild   R   ] sys-devel/gcc-4.2.3  USE="doc fortran gtk mudflap multislot
openmp (-altivec) -bootstrap -build -gcj (-hardened) -ip28 -ip32r10k -libffi
(-multilib) (-n32) (-n64) -nls -nocxx -objc -objc++ -objc-gc -test -vanilla" 0
kB
[ebuild     U ] sys-apps/debianutils-2.28.5 [2.28.4] USE="-static" 136 kB
[ebuild     U ] sys-devel/libtool-2.2.4 [1.5.26] USE="-vanilla" 1,875 kB
[ebuild     U ] media-libs/t1lib-5.1.2 [5.1.1] USE="X doc" 1,829 kB
[ebuild  N    ] dev-python/numpy-1.0.4-r2  USE="lapack -debug" 0 kB

Total: 8 packages (6 upgrades, 1 new, 1 reinstall), Size of downloads: 7,340 kB


I just remerged gcc-4.2.3 yesterday, and the day before.

Reproducible: Always




$ emerge --info
Portage 2.1.5_rc6 (default-linux/amd64/2007.0/desktop, gcc-4.2.3, glibc-2.7-r2,
2.6.24-gentoo-r5 x86_64)
=================================================================
System uname: 2.6.24-gentoo-r5 x86_64 Dual Core AMD Opteron(tm) Processor 275
Timestamp of tree: Mon, 05 May 2008 10:00:01 +0000
app-shells/bash:     3.2_p39
dev-java/java-config: 1.3.7, 2.1.6
dev-lang/python:     2.5.2-r2
sys-apps/baselayout: 2.0.0
sys-apps/openrc:     0.2.3
sys-apps/sandbox:    1.2.18.1-r2
sys-devel/autoconf:  2.13, 2.62
sys-devel/automake:  1.5, 1.7.9-r1, 1.8.5-r3, 1.9.6-r2, 1.10.1-r1
sys-devel/binutils:  2.18-r1
sys-devel/gcc-config: 1.4.0-r4
sys-devel/libtool:   1.5.26
virtual/os-headers:  2.6.25-r1
ACCEPT_KEYWORDS="amd64 ~amd64"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-O2 -march=k8 -mtune=k8 -pipe -fomit-frame-pointer"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/kde/3.5/env /usr/kde/3.5/share/config
/usr/kde/3.5/shutdown /usr/kde/4.0/env /usr/kde/4.0/share/config
/usr/kde/4.0/shutdown /usr/share/config /var/lib/hsqldb"
CONFIG_PROTECT_MASK="/etc/env.d /etc/env.d/java/ /etc/fonts/fonts.conf
/etc/gconf /etc/gentoo-release /etc/revdep-rebuild /etc/terminfo
/etc/texmf/web2c /etc/udev/rules.d"
CXXFLAGS="-O2 -march=k8 -mtune=k8 -pipe -fomit-frame-pointer"
DISTDIR="/usr/portage/distfiles"
FEATURES="collision-protect distlocks fixpackages parallel-fetch sandbox
sfperms strict unmerge-orphans userfetch"
GENTOO_MIRRORS="http://distfiles.gentoo.org
http://distro.ibiblio.org/pub/linux/distributions/gentoo"
LANG="en_US.UTF-8"
LC_ALL="en_US.UTF-8"
LDFLAGS=""
LINGUAS="en en_US"
MAKEOPTS="-j5"
PKGDIR="/usr/portage/packages"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress
--force --whole-file --delete --stats --timeout=180 --exclude=/distfiles
--exclude=/local --exclude=/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/usr/local/layman/font-overlay /usr/local/portage"
SYNC="rsync://rsync.gentoo.org/gentoo-portage"
USE="3dnow X aac acl acpi alsa amd64 apache2 arts atlas avahi bash-completion
berkdb blas bookmarks branding bzip2 cairo cblas cdr cli cracklib crypt ctype
cups dbus doc dri dvd dvdr dvdread eds emacs emboss encode esd evo examples f77
fam fftw firefox foomativdb fortran gdbm gfortran gif gimpprint glitz gpm
gstreamer gtk hal iconv imagemagick imap isdnlog ivman java jpeg jpeg2k kde
kdrive kerberos lapack latex ldap lzo mad mdnsresponder-compat midi mikmod mime
mmap mmx mozbranding mozilla mozsvg mp3 mpeg mplayer mudflap multislot ncurses
nptl nptlonly nsplugin ogg opengl openmp oss pam pcre pdf perl pertty pic png
ppds pppd python qt3 qt3support qt4 quicktime readline reflection rss samba sdl
session spell spl sse sse2 ssl subversion svg symlink tcltk tcpd tetex threads
tiff tk transparency truetype umfpack unicode usb v4l v4l2 vorbis webdav
winbind xcomposite xfs xft xinerama xml xorg xulrunner xv zeroconf zlib"
ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci emu10k1x   
ens1370 ens1371 es1938 es1968 fm801 hda-intel intel8x0 intel8x0m maestro3      
trident usb-audio via82xx via82xx-modem ymfpci" ALSA_PCM_PLUGINS="adpcm alaw
asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa
lfloat linear meter mulaw multi null plug rate route share shm softvol"
APACHE2_MODULES="actions alias auth_basic auth_digest authn_anon authn_dbd
authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile
authz_host authz_owner authz_user autoindex cache dav dav_fs dav_lock dbd
deflate dir disk_cache env expires ext_filter file_cache filter headers ident
imagemap include info log_config logio mem_cache mime mime_magic negotiation
proxy proxy_ajp proxy_balancer proxy_connect proxy_http rewrite setenvif so
speling status unique_id userdir usertrack vhost_alias" ELIBC="glibc"
INPUT_DEVICES="keyboard mouse" KERNEL="linux" LCD_DEVICES="bayrad cfontz
cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LINGUAS="en en_US"
USERLAND="GNU" VIDEO_CARDS="nvidia vga nv"
Unset:  CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, PORTAGE_COMPRESS,
PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS

------- Comment #1 From Carsten Lohrke 2008-05-05 16:33:24 0000 -------
Darren: Sure that it's happening when using -uDp and not only when using -uDNp
as options!?


Portage bug - or doesn't the latest rc print added/removed use flags anymore,
maybe?

------- Comment #2 From Darren Dale 2008-05-05 16:44:18 0000 -------
(In reply to comment #1)
> Darren: Sure that it's happening when using -uDp and not only when using -uDNp
> as options!?

I'm sure:

$ emerge -uDvp world

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

Calculating dependencies... done!
[ebuild   R   ] sys-devel/gcc-4.2.3  USE="doc fortran gtk mudflap multislot
openmp (-altivec) -bootstrap -build -gcj (-hardened) -ip28 -ip32r10k -libffi
(-multilib) (-n32) (-n64) -nls -nocxx -objc -objc++ -objc-gc -test -vanilla" 0
kB
[ebuild     U ] sys-apps/debianutils-2.28.5 [2.28.4] USE="-static" 0 kB
[ebuild     U ] media-libs/t1lib-5.1.2 [5.1.1] USE="X doc" 0 kB
[ebuild     U ] kde-base/kdelibs-3.5.9-r4 [3.5.9-r3] USE="acl alsa arts avahi
branding cups doc fam jpeg2k kerberos spell tiff xinerama -bindist -debug
-kdeenablefinal -kdehiddenvisibility -legacyssl -lua -openexr -utempter" 0 kB

Total: 4 packages (3 upgrades, 1 reinstall), Size of downloads: 0 kB


> Portage bug - or doesn't the latest rc print added/removed use flags anymore,
> maybe?

This is the fourth time I am remerging gcc, there have been no changes to use
flags.

------- Comment #3 From Ed Vazquez 2008-05-05 20:21:21 0000 -------
Also happening here, though as part of revdep-rebuild (again, no USE flags
change, etc. as in the initial ticket).

------- Comment #4 From Zac Medico 2008-05-05 22:11:36 0000 -------
(In reply to comment #3)
> Also happening here, though as part of revdep-rebuild (again, no USE flags
> change, etc. as in the initial ticket).

revdep-rebuild is an entirely separate issue (maybe bug 125728)

(In reply to comment #0)
> [ebuild   R   ] sys-devel/gcc-4.2.3  USE="doc fortran gtk mudflap multislot
> openmp (-altivec) -bootstrap -build -gcj (-hardened) -ip28 -ip32r10k -libffi
> (-multilib) (-n32) (-n64) -nls -nocxx -objc -objc++ -objc-gc -test -vanilla" 0
> kB

I suspect the the problem may be related to the multislot flag. Do you have any 
sys-devel/gcc atoms in /var/lib/portage/world? If so, what are they? Please
reproduce the problem and attach the dependency calculation output with --debug
enabled:

emerge -uDNvp world > debug.log 2&>1

------- Comment #5 From Darren Dale 2008-05-06 12:05:13 0000 -------
(In reply to comment #4)
> (In reply to comment #0)
> I suspect the the problem may be related to the multislot flag. Do you have any 
> sys-devel/gcc atoms in /var/lib/portage/world? If so, what are they? 

sys-devel/gcc

> Please reproduce the problem and attach the dependency calculation output with --debug
> enabled:
> 
> emerge -uDNvp world > debug.log 2&>1

Do you mean emerge -uDNvp --debug world > debug.log 2&>1? That produces an
empty file. I'll attach the output of emerge -uDNvp --debug world > debug.log.

------- Comment #6 From Darren Dale 2008-05-06 12:06:17 0000 -------
Created an attachment (id=152101) [details]
output of emerge -uDNvp --debug world

------- Comment #7 From Zac Medico 2008-05-07 02:04:06 0000 -------
The sci-libs/acml-4.1.0 package that you have installed has a sys-devel/gcc:4.2
dependency atom. That dependency atom is incompatible with USE=multislot since
multislot causes the value in /var/db/pkg/sys-devel/gcc-4.2.3/SLOT to be
something other than "4.2". I don't see any way to fix this other than for you
disable USE=multislot or avoid packages that have slot dependencies on gcc.

------- Comment #8 From Darren Dale 2008-05-07 12:21:54 0000 -------
(In reply to comment #7)
> The sci-libs/acml-4.1.0 package that you have installed has a sys-devel/gcc:4.2
> dependency atom. That dependency atom is incompatible with USE=multislot since
> multislot causes the value in /var/db/pkg/sys-devel/gcc-4.2.3/SLOT to be
> something other than "4.2". I don't see any way to fix this other than for you
> disable USE=multislot or avoid packages that have slot dependencies on gcc.

I didn't understand most of that, but I did get that unmerging acml would
prevent portage from trying to remerge gcc. I can use blas- and lapack-atlas
instead. Is this a portage bug or a feature?

------- Comment #9 From Zac Medico 2008-05-07 16:39:33 0000 -------
(In reply to comment #8)
> I didn't understand most of that, but I did get that unmerging acml would
> prevent portage from trying to remerge gcc. I can use blas- and lapack-atlas
> instead. Is this a portage bug or a feature?

It's a portage feature and a misfeature of what USE=multislot does. Portage is
correctly trying to guarantee that the sys-devel/gcc:4.2 is satisfied by an
_installed_ package. However, when portage installs a package to satisfy
sys-devel/gcc:4.2, USE=multislot can cause the SLOT to spontaneously change to
some unexpected value. This prevents the sys-devel/gcc:4.2 dependency from
every being satisfied.

------- Comment #10 From Zac Medico 2008-05-08 17:46:43 0000 -------
Created an attachment (id=152499) [details]
detect and prevent multislot package reinstallation due to slot dependencies

If this patch is saved as /tmp/multislot.patch then it can be applied as
follows:

patch /usr/lib/portage/bin/emerge /tmp/multislot.patch

------- Comment #11 From Zac Medico 2008-05-09 09:31:59 0000 -------
This is fixed in 2.1.5_rc8.

Bug List: (This bug is not in your last search results)   Show last search results      Search page      Enter new bug