On my system Module-Build is due to an upgrade, but it fails with a file collision on "/usr/bin/config_data". The file in question is a symlink pointing to "/usr/bin/config_data-0.420.500-perl-5.20.2" and equery b $file says it belongs to "dev-lang/perl-5.20.2-r1". equery d Module-Rebuild gives results, so I doubt it's functionality now is included in perl itself? Gentoo ~amd64, doubt emerge --info is needed here, ask if it is. Reproducible: Always
Aaaaah. I think I know why I saw this myself ... Its residual from perl-core mechanics. perl-core/ stuff that installs to bin/ does magic suffixing and symlink fixing. dev-lang/perl stuff that installs to bin/ does magic suffixing and symlink fixing dev-perl/ does no magic suffixing and installs to the place the other guys put a symlink in. So the migration from perl-core/ to dev-perl/ has introduced a change in installation mechanics which require perl > 5.22 to be installed or for the symlink mechanic to be reinstated. _JOYS_
this breaks stage3 building for me
i'm going to make this change if the perl guys don't have any input: dev-lang/perl/perl-5.20.2.ebuild: - src_remove_dual perl-core/Module-Build 0.420.500 config_data this matches what the 5.22 ebuild is already doing
i've committed this now: http://gitweb.gentoo.org/repo/gentoo.git/commit/?id=df9d4aa2a2775d6924ef7388dc7f1bb0e13aae9c
if you say it was fixed in october 2015, then how the hell i see this very bug in may 2016? on a freshly synced tree?
for the reference, the bug still exists with dev-lang/perl-5.20.2 (latest stable) and dev-perl/Module-Build-0.421.600 (likewise) * Messages for package dev-perl/Module-Build-0.421.600: * 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). See * http://wiki.gentoo.org/wiki/Knowledge_Base:Blockers for tips on how to * solve the problem. And once again, please do NOT file a bug report * unless you have completely understood the above message. * * package dev-perl/Module-Build-0.421.600 NOT merged * * Detected file collision(s): * * /usr/bin/config_data * /usr/share/man/man1/config_data.1.bz2 * * Searching all installed packages for file collisions... * * Press Ctrl-C to Stop * * None of the installed packages claim the file(s). * * Package 'dev-perl/Module-Build-0.421.600' NOT merged due to file * collisions. If necessary, refer to your elog messages for the whole * content of the above message. # equery b /usr/bin/config_data /usr/share/man/man1/config_data.1.bz2 * Searching for /usr/bin/config_data,/usr/share/man/man1/config_data.1.bz2 ... dev-lang/perl-5.20.2 (/usr/share/man/man1/config_data-0.420.500-perl-5.20.2.1.bz2) dev-lang/perl-5.20.2 (/usr/bin/config_data-0.420.500-perl-5.20.2)
(In reply to Nick Soveiko from comment #5) > if you say it was fixed in october 2015, then how the hell i see this very > bug in may 2016? on a freshly synced tree? Uh, good question. Can't test it anymore unfortunately as Perl 5.20 is gone everywhere (5.22.2 is about to be stabilized). It will definitely NOT hurt if you overwrite the file using FEATURES="-collision-protect protect-owned"
(In reply to Andreas K. Hüttel from comment #7) > It will definitely NOT hurt if you overwrite the file using > FEATURES="-collision-protect protect-owned" it's a workaround. but thanks!
I just hit this as of now with perl-cleaner after upgrade from perl-5.24.1-r2 to 5.24.3: 1515699304: Started emerge on: Jan 11, 2018 20:35:03 1515699304: *** emerge mysql dev-perl/DBD-mysql 1515699397: >>> emerge (1 of 8) dev-lang/perl-5.24.3 to / 1515699397: === (1 of 8) Cleaning (dev-lang/perl-5.24.3::/usr/portage/dev-lang/perl/perl-5.24.3.ebuild) 1515699399: === (1 of 8) Compiling/Merging (dev-lang/perl-5.24.3::/usr/portage/dev-lang/perl/perl-5.24.3.ebuild) 1515700895: === (1 of 8) Merging (dev-lang/perl-5.24.3::/usr/portage/dev-lang/perl/perl-5.24.3.ebuild) 1515700911: >>> AUTOCLEAN: dev-lang/perl:0 1515700911: === Unmerging... (dev-lang/perl-5.24.1-r2) 1515700920: >>> unmerge success: dev-lang/perl-5.24.1-r2 1515700927: === (1 of 8) Post-Build Cleaning (dev-lang/perl-5.24.3::/usr/portage/dev-lang/perl/perl-5.24.3.ebuild) 1515700927: ::: completed emerge (1 of 8) dev-lang/perl-5.24.3 to / * Messages for package dev-perl/Module-Build-0.421.600: * 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 https://bugs.gentoo.org/ unless you report exactly * which two packages install the same file(s). See * https://wiki.gentoo.org/wiki/Knowledge_Base:Blockers for tips on how * to solve the problem. And once again, please do NOT file a bug report * unless you have completely understood the above message. * * Detected file collision(s): * * /usr/share/man/man1/config_data.1.bz2 * /usr/bin/config_data * * Searching all installed packages for file collisions... * * Press Ctrl-C to Stop * * None of the installed packages claim the file(s). * * Package 'dev-perl/Module-Build-0.421.600' merged despite file * collisions. If necessary, refer to your elog messages for the whole * content of the above message. # emerge --info Portage 2.3.19 (python 2.7.14-final-0, hardened/linux/amd64, gcc-6.4.0, glibc-2.25-r9, 4.4.111 x86_64) ================================================================= System uname: Linux-4.4.111-x86_64-QEMU_Virtual_CPU_version_0.14-with-gentoo-2.3 KiB Mem: 1023696 total, 299388 free KiB Swap: 556028 total, 473316 free Timestamp of repository gentoo: Mon, 08 Jan 2018 16:30:01 +0000 Head commit of repository gentoo: 2007b5399411705dce21b77b3fa75b996c6a80e5 sh bash 4.3_p48-r1 ld GNU ld (Gentoo 2.25.1 p1.1) 2.25.1 app-shells/bash: 4.3_p48-r1::gentoo dev-java/java-config: 2.2.0-r3::gentoo dev-lang/perl: 5.24.3::gentoo dev-lang/python: 2.7.14-r1::gentoo, 3.4.5-r1::gentoo, 3.5.4-r1::gentoo, 3.6.3-r1::gentoo dev-util/cmake: 3.9.6::gentoo dev-util/pkgconfig: 0.28-r2::gentoo sys-apps/baselayout: 2.3::gentoo sys-apps/openrc: 0.28::gentoo sys-apps/sandbox: 2.10-r1::gentoo sys-devel/autoconf: 2.13::gentoo, 2.69::gentoo sys-devel/automake: 1.11.6::gentoo, 1.12.6::gentoo, 1.13.4::gentoo, 1.14.1::gentoo, 1.15::gentoo sys-devel/binutils: 2.25.1-r1::gentoo, 2.28.1::gentoo, 2.29.1-r1::gentoo sys-devel/gcc: 6.4.0::gentoo sys-devel/gcc-config: 1.7.3::gentoo sys-devel/libtool: 2.4.6-r3::gentoo sys-devel/make: 4.2.1::gentoo sys-kernel/linux-headers: 4.3::gentoo (virtual/os-headers) sys-libs/glibc: 2.25-r9::gentoo Repositories: gentoo location: /usr/portage sync-type: rsync sync-uri: rsync://rsync.gentoo.org/gentoo-portage priority: -1000 sync-rsync-extra-opts: x-portage location: /usr/local/portage masters: gentoo priority: 0 science location: /var/lib/layman/science masters: gentoo priority: 50 ACCEPT_KEYWORDS="amd64" ACCEPT_LICENSE="* -@EULA dlj-1.1 sun-bcla-java-vm Oracle-BCLA-JavaSE IBM-J1.6 skype-eula Nero-EULA-US AdobeFlash-10.3 skype-4.0.0.7-copyright AdobeFlash-11.x" CBUILD="x86_64-pc-linux-gnu" CFLAGS="-O2 -pipe -march=native" CHOST="x86_64-pc-linux-gnu" CONFIG_PROTECT="/etc /usr/share/easy-rsa /usr/share/gnupg/qualified.txt /var/bind" CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/dconf /etc/env.d /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/php/apache2-php5.6/ext-active/ /etc/php/apache2-php7.1/ext-active/ /etc/php/cgi-php5.6/ext-active/ /etc/php/cgi-php7.1/ext-active/ /etc/php/cli-php5.6/ext-active/ /etc/php/cli-php7.1/ext-active/ /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo" CXXFLAGS="-O2 -pipe -march=native" DISTDIR="/usr/portage/distfiles" FCFLAGS="-O2 -pipe" FEATURES="assume-digests binpkg-logs config-protect-if-modified distlocks ebuild-locks fixlafiles merge-sync multilib-strict news nostrip parallel-fetch preserve-libs protect-owned sandbox sfperms splitdebug strict unknown-features-warn unmerge-logs unmerge-orphans userfetch userpriv usersandbox usersync xattr" FFLAGS="-O2 -pipe" GENTOO_MIRRORS="rsync://ftp.fi.muni.cz/pub/linux/gentoo/ rsync://gentoo.mirror.dkm.cz/gentoo/ ftp://gentoo.mirror.web4u.cz/" LANG="en_US.utf8" LDFLAGS="-Wl,-O1 -Wl,--as-needed" LINGUAS="en en_US en_GB cs cz" MAKEOPTS="-j1" PKGDIR="/usr/portage/packages" PORTAGE_CONFIGROOT="/" PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --omit-dir-times --compress --force --whole-file --delete --stats --human-readable --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages --exclude=/.git" PORTAGE_TMPDIR="/var/tmp" USE="X amd64 apache apache2 berkdb bzip2 cairo cgi cli cracklib crypt cryptlib cxx dbus device-mapper dhcp dri emboss fontconfig fortran gbm gd gdbm geoip gnutls gpm hardened iconv innodb ipv6 java jce jpeg jpg keymap ladspa lapack lcms libnotify mmx modules multilib mysql mysqli ncurses nfs nls nptl nptlonly pam pcre pdf perl php pie png python readline resolvconf seccomp server session spf sqlite sse sse2 ssl ssp suexec svg syslog tcpd threads tiff truetype udev unicode urandom usb vhosts vim-syntax x11 xattr xml xtpax zlib" ABI_X86="64" 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" APACHE2_MODULES="alias authz_host auth_basic auth_digest autoindex cgi cgid deflate dir env expires filter headers include info imagemap mem_cache mime mime_magic negotiation remoteip setenvif status userdir vhost_alias rewrite usertrack cache file_cache disk_cache charset_lite log_config log_forensic" CALLIGRA_FEATURES="kexi words flow plan sheets stage tables krita karbon braindump author" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" CPU_FLAGS_X86="mmx mmxext popcnt sse sse2 sse3 sse4a" ELIBC="glibc" GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock isync itrax mtk3301 nmea ntrip navcom oceanserver oldstyle oncore rtcm104v2 rtcm104v3 sirf skytraq superstar2 timing tsip tripmate tnt ublox ubx" INPUT_DEVICES="libinput keyboard mouse" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LIBREOFFICE_EXTENSIONS="presenter-console presenter-minimizer" OFFICE_IMPLEMENTATION="libreoffice" PHP_TARGETS="php5-6 php-7.1" POSTGRES_TARGETS="postgres9_5" PYTHON_SINGLE_TARGET="python3_5" PYTHON_TARGETS="python2_7 python3_5" RUBY_TARGETS="ruby22" USERLAND="GNU" VIDEO_CARDS="vesa" XTABLES_ADDONS="quota2 psd pknock lscan length2 ipv4options ipset ipp2p iface geoip fuzzy condition tee tarpit sysrq steal rawnat logmark ipmark dhcpmac delude chaos account" Unset: CC, CPPFLAGS, CTARGET, CXX, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LC_ALL, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS # # emerge -pv perl dev-perl/Module-Build [ebuild R ] dev-lang/perl-5.24.3:0/5.24::gentoo USE="berkdb gdbm -debug -doc -ithreads" 0 KiB [ebuild R ] dev-perl/Module-Build-0.421.600::gentoo USE="{-test}" 0 KiB Going back through emerge.log I see: 1505584846: Started emerge on: Sep 16, 2017 20:00:45 1505584846: *** emerge --oneshot --update ... 1505584889: >>> emerge (1 of 51) dev-lang/perl-5.24.1-r2 to / 1505584893: === (1 of 51) Cleaning (dev-lang/perl-5.24.1-r2::/usr/portage/dev-lang/perl/perl-5.24.1-r2.ebuild) 1505584893: === (1 of 51) Compiling/Merging (dev-lang/perl-5.24.1-r2::/usr/portage/dev-lang/perl/perl-5.24.1-r2.ebuild) 1505585571: === (1 of 51) Merging (dev-lang/perl-5.24.1-r2::/usr/portage/dev-lang/perl/perl-5.24.1-r2.ebuild) 1505585579: >>> AUTOCLEAN: dev-lang/perl:0 1505585579: === Unmerging... (dev-lang/perl-5.22.2) 1505585584: >>> unmerge success: dev-lang/perl-5.22.2 1505585587: === (1 of 51) Post-Build Cleaning (dev-lang/perl-5.24.1-r2::/usr/portage/dev-lang/perl/perl-5.24.1-r2.ebuild) 1505585587: ::: completed emerge (1 of 51) dev-lang/perl-5.24.1-r2 to / Going further back I see: 1481286469: Started emerge on: Dec 09, 2016 13:27:48 1481286469: *** emerge --newuse --nodeps --update perl 1481286471: >>> emerge (1 of 1) dev-lang/perl-5.22.2 to / 1481286471: === (1 of 1) Cleaning (dev-lang/perl-5.22.2::/usr/portage/dev-lang/perl/perl-5.22.2.ebuild) 1481286473: === (1 of 1) Compiling/Merging (dev-lang/perl-5.22.2::/usr/portage/dev-lang/perl/perl-5.22.2.ebuild) 1481287060: === (1 of 1) Merging (dev-lang/perl-5.22.2::/usr/portage/dev-lang/perl/perl-5.22.2.ebuild) 1481287067: >>> AUTOCLEAN: dev-lang/perl:0 1481287067: === Unmerging... (dev-lang/perl-5.16.3) 1481287071: >>> unmerge success: dev-lang/perl-5.16.3 1481287075: === (1 of 1) Updating world file (dev-lang/perl-5.22.2) 1481287075: === (1 of 1) Post-Build Cleaning (dev-lang/perl-5.22.2::/usr/portage/dev-lang/perl/perl-5.22.2.ebuild) 1481287075: ::: completed emerge (1 of 1) dev-lang/perl-5.22.2 to / And my emerge.log starts at: 1387561155: Started emerge on: Dec 20, 2013 17:39:14