Summary: | sys-apps/file needs rebuild after upgrading from <sys-libs/glibc-2.8 to >=sys-libs/glibc-2.8 | ||
---|---|---|---|
Product: | Portage Development | Reporter: | Kyle Robson <kyledr> |
Component: | Unclassified | Assignee: | Portage team <dev-portage> |
Status: | RESOLVED FIXED | ||
Severity: | normal | CC: | abdulkadiryaman, ade05fr, base-system, daddysmurf, jer, loki_val, mattz0rpwnz |
Priority: | High | ||
Version: | unspecified | ||
Hardware: | x86 | ||
OS: | Linux | ||
URL: | https://bugzilla.redhat.com/show_bug.cgi?id=439168 | ||
Whiteboard: | |||
Package list: | Runtime testing required: | --- | |
Attachments: | build log for acl |
Description
Kyle Robson
2009-01-21 18:57:38 UTC
I have sys-apps/file 4.26(22:46:47 23-09-08)(python) and sys-apps/texinf 4.13(21:31:08 22-10-08)(nls -static) installed with no collision. Did you use different use flags? # These settings were set by the catalyst build script that automatically built this stage # Please consult /etc/make.conf.example for a more detailed example CFLAGS="-O2 -march=pentium-m -pipe -fomit-frame-pointer" CHOST="i686-pc-linux-gnu" CXXFLAGS="${CFLAGS}" MAKEOPTS="-j2" ACCEPT_KEYWORDS="~x86" USE="X acpi aim alsa avi cdr crypt divx4linux win32codecs xvid divx dvd \ dvdr emacs gif -gtk -gtk2 -qt -kde -gnome firefox jpeg mpeg \ ncurses ogg vorbis oggvorbis matroska opengl png ssl \ tiff truetype unicode usb videos java bitmap-fonts \ truetype-fonts type1-fonts dbus hal pdf" GENTOO_MIRRORS="http://gentoo.mirrors.tds.net/gentoo" SYNC="rsync://rsync.us.gentoo.org/gentoo-portage" ALSA_CARDS="hda-intel" INPUT_DEVICES="keyboard mouse" VIDEO_CARDS="radeon" source /usr/local/portage/layman/make.conf Also, I tried ignoring the collision and now I have this when emerging another package: >>> Failed to install dev-libs/newt-0.52.8, Log file: >>> '/var/tmp/portage/dev-libs/newt-0.52.8/temp/build.log' * Messages for package dev-python/dnspython-1.6.0: * Documentation is sparse at the moment. Use pydoc, * or read the HTML documentation at the dnspython's home page. * Messages for package dev-libs/newt-0.52.8: * This package will overwrite one or more files that may belong to other * packages (see list below). You can use a command such as `portageq * owners / <filename>` to identify the installed package that owns a * file. If portageq reports that only one package owns a file then do * NOT file a bug report. A bug report is only useful if it identifies at * least two or more packages that are known to install the same file(s). * If a collision occurs and you can not explain where the file came from * then you should simply ignore the collision since there is not enough * information to determine if a real problem exists. Please do NOT file * a bug report at http://bugs.gentoo.org unless you report exactly which * two packages install the same file(s). Once again, please do NOT file * a bug report unless you have completely understood the above message. * * package dev-libs/newt-0.52.8 NOT merged * * Detected file collision(s): * * /usr/share/man.ecompress.dir * * Searching all installed packages for file collisions... * * Press Ctrl-C to Stop * * sys-apps/file-4.26 * /usr/share/man.ecompress.dir * * sys-apps/texinfo-4.13 * /usr/share/man.ecompress.dir * * Package 'dev-libs/newt-0.52.8' NOT merged due to file collisions. If * necessary, refer to your elog messages for the whole content of the * above message. * GNU info directory index is up-to-date. vix ~ # portageq owners / /usr/share/man.ecompress.dir sys-apps/texinfo-4.13 /usr/share/man.ecompress.dir sys-apps/file-4.26 /usr/share/man.ecompress.dir Looks like a problem (fixed) in sys-apps/portage-2.1.6.7? This is the same issue reported in bug #242354 but we don't know exactly what causes it. The ecompressdir program is supposed to remove the *.ecompress.dir files, and it works flawlessly for most people. I got a workaround. Add COLLISION_IGNORE="/usr/share/man.ecompress.dir" to /etc/make.conf Please attache /var/tmp/portage/sys-apps/file-4.26/temp/build.log since it might contain some clue. It no longer exists because of the workaround. If you set PORT_LOGDIR="/var/log/portage" in /etc/make.conf and rebuild the package, then it will save the log for you in there. Created attachment 179201 [details]
build log for acl
This failed because of collision:
* Detected file collision(s):
*
* /usr/share/man.ecompress.dir
*
* Searching all installed packages for file collisions...
*
* Press Ctrl-C to Stop
*
* dev-lang/python-2.5.4
* /usr/share/man.ecompress.dir
*
* sys-apps/portage-2.2_rc23
* /usr/share/man.ecompress.dir
*
* dev-util/scons-1.2.0
* /usr/share/man.ecompress.dir
*
* app-portage/layman-1.2.3
* /usr/share/man.ecompress.dir
*
* dev-libs/newt-0.52.8
* /usr/share/man.ecompress.dir
*
* sys-apps/texinfo-4.13
* /usr/share/man.ecompress.dir
*
* dev-python/eyeD3-0.6.16
* /usr/share/man.ecompress.dir
*
* sys-apps/file-4.26
* /usr/share/man.ecompress.dir
*
* dev-python/twisted-8.2.0
* /usr/share/man.ecompress.dir
*
* sys-libs/timezone-data-2009a
* /usr/share/man.ecompress.dir
*
* sys-apps/attr-2.4.43
* /usr/share/man.ecompress.dir
*
* Package 'sys-apps/acl-2.2.47' NOT merged due to file collisions. If
* necessary, refer to your elog messages for the whole content of the
* above message.
It must be related to the error messages that look like this: xargs: xargs.c:450: main: Assertion `bc_ctl.arg_max <= (131072-2048)' failed Maybe if you rebuild sys-apps/findutils then that will fix it. *** Bug 242354 has been marked as a duplicate of this bug. *** I updated it. I haven't had it crash yet, but I accidentally left COLLISION_IGNORE in make.conf. It was actually still crashing every once in a while with that, partially because I didn't include all possible *.ecompress.doc and partially for some other reason. I'll let you know if I have any more problems. FYI: I masked the latest findutils in Prefix, because for me on at least Solaris it crashes for a long find run with an assertion. (In reply to comment #9) > Created an attachment (id=179201) [edit] > build log for acl Adding base-system since the problem seems to be related to the xargs 'bc_ctl.arg_max' assertion messages shown in the log. Do you have version 4.5.3 of findutils installed? Yes, I installed findutils 4.5.3 as suggested, and I haven't had problems since. so findutils-4.5.2 has problems while findutils-4.5.3 does not. sounds fixed to me. I have findutils-4.5.4 installed but still same issue. I have to manually remove /usr/share/man.ecompress.dir every time it claims about collision. emerge -s findutils Searching... [ Results for search key : findutils ] [ Applications found : 1 ] * sys-apps/findutils Latest version available: 4.5.4 Latest version installed: 4.5.4 Size of files: 2,217 kB Homepage: http://www.gnu.org/software/findutils/ Description: GNU utilities for finding files License: GPL-2 (In reply to comment #16) > so findutils-4.5.2 has problems while findutils-4.5.3 does not. sounds fixed > to me. > Sorry, filename is not /usr/share/man.ecompress.dir but /usr/share/info.ecompress.dir. And this issue happens while i was trying to "emerge -Du world" after a fresh installation from minimal gentoo CD. As a workaround adding COLLISION_IGNORE="/usr/share/info.ecompress.dir" to /etc/make.conf works. (In reply to comment #17) > I have findutils-4.5.4 installed but still same issue. I have to manually > remove /usr/share/man.ecompress.dir every time it claims about collision. > > emerge -s findutils > Searching... > [ Results for search key : findutils ] > [ Applications found : 1 ] > > * sys-apps/findutils > Latest version available: 4.5.4 > Latest version installed: 4.5.4 > Size of files: 2,217 kB > Homepage: http://www.gnu.org/software/findutils/ > Description: GNU utilities for finding files > License: GPL-2 > > > (In reply to comment #16) > > so findutils-4.5.2 has problems while findutils-4.5.3 does not. sounds fixed > > to me. > > > This is redhat bz 439168 (URL Field). It happens when you upgrade GLIBC but do not rebuild findutils. Rebuilding findutils should fix it IOW. From the URL: ------- Comment #5 From Jakub Jelinek 2008-03-27 10:47:12 EDT ------- Current glibc is 2.7.90-12, not -9. Anyway, the bug is in xargs, the assert is bogus. With the 2.6.23+ kernels sysconf (_SC_ARG_MAX) can return large value than ARG_MAX macro. While bc_get_arg_max handles that correctly, xargs.c instead of asserting say assert(bc_ctl.arg_max <= bc_ctl.posix_arg_size_max); or (more expensive): assert(bc_ctl.arg_max <= bc_get_arg_max() - 2048); asserts: assert(bc_ctl.arg_max <= (ARG_MAX-2048)); which of course fails if sysconf (_SC_ARG_MAX) > ARG_MAX. ------- Comment #7 From Jakub Jelinek 2008-03-27 12:34:21 EDT ------- Next rawhide glibc will #undef ARG_MAX, which is more POSIXly correct and for findutils just a rebuild will be needed (though the assert is still a bad idea, otherwise whenever some OS changes from a fixed arg size limit to a dynamic one xargs will need rebuild), though it can break other programs which use ARG_MAX incorrectly (google codesearch e.g. showed arla, some ksh variants, etc.). Programs should use sysconf (_SC_ARG_MAX) if ARG_MAX is not defined, and _SC_ARG_MAX is defined. *** Bug 235905 has been marked as a duplicate of this bug. *** *** Bug 244461 has been marked as a duplicate of this bug. *** *** Bug 270424 has been marked as a duplicate of this bug. *** Had some of this happen recently while updating a forgotten system. In my case upgrading bash to 4.2 fixed the issue. |