Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 491452 - dev-lang/ruby-2.0.0_p247-r2 with dev-ruby/json-1.8.1 LDFLAGS=-Wl,--build-id FEATURES=splitdebug - file collisions in /usr/lib/debug/.build-id/e1/798f66786ef66d2f0d4cec1fbaca463fa32b72
Summary: dev-lang/ruby-2.0.0_p247-r2 with dev-ruby/json-1.8.1 LDFLAGS=-Wl,--build-id F...
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] Development (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Gentoo Ruby Team
URL:
Whiteboard:
Keywords:
: 528652 534600 (view as bug list)
Depends on:
Blocks:
 
Reported: 2013-11-17 00:14 UTC by Cody Schafer
Modified: 2015-01-05 06:48 UTC (History)
4 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 Cody Schafer 2013-11-17 00:14:16 UTC
dev-ruby/json-1.8.1 is currently installed (with splitdebug and -Wl,--build-id). dev-lang/ruby-2.0.0_p247-r1 was installed without LDFLAGS=-Wl,--build-id. Attempting to install dev-lang/ruby-2.0.0_p247-r2 with LDFLAGS=-Wl,--build-id results in the following collision:


 * 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.
 * 
 * Detected file collision(s):
 * 
 * 	/usr/lib/debug/.build-id/e1/798f66786ef66d2f0d4cec1fbaca463fa32b72.debug
 * 	/usr/lib/debug/.build-id/e1/798f66786ef66d2f0d4cec1fbaca463fa32b72
 * 
 * Searching all installed packages for file collisions...
 * 
 * Press Ctrl-C to Stop
 * 
 * dev-ruby/json-1.8.1:0::gentoo
 * 	/usr/lib/debug/.build-id/e1/798f66786ef66d2f0d4cec1fbaca463fa32b72
 * 	/usr/lib/debug/.build-id/e1/798f66786ef66d2f0d4cec1fbaca463fa32b72.debug
 * 
 * Package 'dev-lang/ruby-2.0.0_p247-r2' NOT merged due to file
 * collisions. If necessary, refer to your elog messages for the whole
 * content of the above message.

-------------------------------

emerge --info:

Portage 2.2.7 (default/linux/amd64/13.0, gcc-4.7.3, glibc-2.17, 3.11.2-gentoo x86_64)
=================================================================
System uname: Linux-3.11.2-gentoo-x86_64-Intel-R-_Core-TM-_i5-2410M_CPU_@_2.30GHz-with-gentoo-2.2
KiB Mem:    16313748 total,   2815024 free
KiB Swap:    5242876 total,   4831248 free
Timestamp of tree: Sat, 16 Nov 2013 20:30:01 +0000
ld GNU ld (GNU Binutils) 2.23.1
distcc 3.1 x86_64-pc-linux-gnu [enabled]
ccache version 3.1.9 [enabled]
app-shells/bash:          4.2_p45
dev-java/java-config:     2.2.0::java-overlay
dev-lang/python:          2.7.5-r2, 3.1.5-r1000::progress, 3.2.5-r2, 3.3.2-r2
dev-util/ccache:          3.1.9-r3
dev-util/cmake:           2.8.11.2
dev-util/pkgconfig:       0.28
sys-apps/baselayout:      2.2
sys-apps/openrc:          0.12.4
sys-apps/sandbox:         2.6-r1
sys-devel/autoconf:       2.13, 2.69
sys-devel/automake:       1.4_p6-r1, 1.9.6-r3, 1.10.3, 1.11.6, 1.12.6, 1.13.4, 1.14
sys-devel/binutils:       2.23.1, 2.23.2
sys-devel/gcc:            4.4.5, 4.5.4, 4.6.3, 4.7.3, 4.8.1
sys-devel/gcc-config:     1.8
sys-devel/libtool:        2.4.2
sys-devel/make:           3.82-r4
sys-kernel/linux-headers: 3.11 (virtual/os-headers)
sys-libs/glibc:           2.17
Repositories: gentoo local zugaina jmesmon x11 sunrise zx2c4 spring sigrok toolchain
ACCEPT_KEYWORDS="amd64 ~amd64"
ACCEPT_LICENSE="* -@EULA"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-march=corei7-avx -mcx16 -msahf -mno-movbe -maes -mpclmul -mpopcnt -mno-abm -mno-lwp -mno-fma -mno-fma4 -mno-xop -mno-bmi -mno-bmi2 -mno-tbm -mavx -mno-avx2 -msse4.2 -msse4.1 -mno-lzcnt -mno-rdrnd -mno-f16c -mno-fsgsbase --param l1-cache-size=32 --param l1-cache-line-size=64 --param l2-cache-size=3072 -mtune=corei7-avx"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/share/config /usr/share/gnupg/qualified.txt /usr/share/maven-bin-3.0/conf /usr/share/maven-bin-3.1/conf /usr/share/polkit-1/actions /var/lib/hsqldb"
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.5/ext-active/ /etc/php/cgi-php5.5/ext-active/ /etc/php/cli-php5.5/ext-active/ /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo /etc/texmf/language.dat.d /etc/texmf/language.def.d /etc/texmf/updmap.d /etc/texmf/web2c"
CXXFLAGS="-march=corei7-avx -mcx16 -msahf -mno-movbe -maes -mpclmul -mpopcnt -mno-abm -mno-lwp -mno-fma -mno-fma4 -mno-xop -mno-bmi -mno-bmi2 -mno-tbm -mavx -mno-avx2 -msse4.2 -msse4.1 -mno-lzcnt -mno-rdrnd -mno-f16c -mno-fsgsbase --param l1-cache-size=32 --param l1-cache-line-size=64 --param l2-cache-size=3072 -mtune=corei7-avx"
DISTDIR="/usr/portage/distfiles"
EMERGE_DEFAULT_OPTS="--jobs 3 --load-average 3.5"
FCFLAGS="-O2 -pipe"
FEATURES="assume-digests binpkg-logs ccache compress-build-logs compressdebug config-protect-if-modified distcc distlocks ebuild-locks fakeroot fixlafiles merge-sync news parallel-fetch parallel-install 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="http://gentoo.llarian.net/ ftp://gentoo.llarian.net/pub/gentoo http://gentoo.gossamerhost.com ftp://mirrors.tera-byte.com/pub/gentoo http://gentoo.mirrors.tera-byte.com/"
LANG="en_US.UTF8"
LDFLAGS="-Wl,-O1 -Wl,--as-needed -Wl,--build-id"
MAKEOPTS="-j6 --load-average 4.2"
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"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/usr/local/portage /var/lib/layman/zugaina /var/lib/layman/jmesmon /var/lib/layman/x11 /var/lib/layman/sunrise /var/lib/layman/zx2c4 /var/lib/layman/Spring /var/lib/layman/sigrok /var/lib/layman/toolchain"
USE="X aac aacplus acl acpi alac alsa amd64 amr apng ass avahi avx bash-completion berkdb bittorrent bl bluetooth bluray bs2b bzip2 cairo caps cdda cddb cdr celt clang cli colord cracklib crypt cscope cups curl cvs cxx dbus device-mapper dia dirac djvu dmx doc dri drm dvb dvd dvi egl exif fasttrack ffmpeg flac fontconfig fortran ftdi ftp fuse g3dvl gadu gallium gbm gcj gd gdbm geoip gif gimp glamor gles gles1 gles2 gmp gnome-keyring gnutella gnutls go gold gpg gphoto2 graphite groupwise gstreamer gtk gudev hdri hwdb iconv icu imlib ipv6 jack java javascript jbig jit jpeg jpeg2k kdrive kerberos keymap kpathsea lame laptop latex lcms libass libkms libnotify libsamplerate lto lua lvm lzma mac mad magic maildir meanwhile mmap mmx mmxext mng mod modplug modules mp3 mpeg mudflap multilib multitarget ncurses network nls nptl objc ocr ogg opengl openmp openvg opus osmesa pam parted pcap pcre pdf pdfimport perl pgo plot png pnm policykit postgres prediction pulseaudio pypy python qemu qt3support readline real rtmp ruby samba scanner schroedinger scsi session shorten silc smime smp sna sndfile snmp sox speex spell sqlite sse sse2 sse4 sse4_1 sse4_2 ssh ssl ssse3 startup-notification subversion svg system-sqlite tcpd theora tiff tk tokyocabinet tools transparent-proxy truetype udev uml unicode upnp usb uxa v4l v4l2 vaapi vala vdpau vim-pager vim-syntax virt-network virtualbox vorbis vpx wavpack webkit wifi winbind wmf x264 xattr xcb xcomposite xetex xft xinerama xml xmp xnest xorg xpm xv xvfb xvid xvmc zephyr zlib zsh-completion" 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="authn_core authz_core socache_shmcb unixd actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache cgi cgid dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" CALLIGRA_FEATURES="kexi words flow plan sheets stage tables krita karbon braindump author" CAMERAS="ptp2" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" ELIBC="glibc" GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock itrax mtk3301 nmea ntrip navcom oceanserver oldstyle oncore rtcm104v2 rtcm104v3 sirf superstar2 timing tsip tripmate tnt ubx" INPUT_DEVICES="keyboard mouse evdev synaptics" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LIBREOFFICE_EXTENSIONS="presenter-console presenter-minimizer" LINGUAS="en_US.UTF-8" OFFICE_IMPLEMENTATION="libreoffice" PHP_TARGETS="php5-5" PYTHON_SINGLE_TARGET="python2_7" PYTHON_TARGETS="python2_7 python3_2" RUBY_TARGETS="ruby19 ruby20 ruby18" USERLAND="GNU" VIDEO_CARDS="radeon intel i915 i965" 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:  CPPFLAGS, CTARGET, INSTALL_MASK, LC_ALL, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS, SYNC, USE_PYTHON
Comment 1 Cody Schafer 2013-11-17 01:18:08 UTC
I've begun using COLLISION_IGNORE="/usr/lib/debug/.build-id/*/*" as a workaround.
Comment 2 Jeroen Roovers (RETIRED) gentoo-dev 2013-11-19 03:26:12 UTC
Must be one of these (dev-lang/ruby):

/usr/lib64/ruby/2.0.0/x86_64-linux/json/ext/parser.so
/usr/lib64/ruby/2.0.0/x86_64-linux/json/ext/generator.so

colliding with one of these (dev-ruby/json):

/usr/lib64/ruby/gems/2.0.0/gems/json-1.8.0/lib/json/ext/parser.so
/usr/lib64/ruby/gems/2.0.0/gems/json-1.8.0/lib/json/ext/generator.so

Which (paths might differ)?
Comment 3 Cody Schafer 2014-02-27 05:23:29 UTC
At the moment with ruby-2.0.0_p353-r2 and json-1.8.1 installed none of those files share a buildid, nor do they have the build id I attached to this report.
Comment 4 Hans de Graaff gentoo-dev Security 2014-05-05 18:19:23 UTC
We don't properly unbundle the json gem from the ruby code, even though we already depend on the external version. We'll need to test bootstrapping a new version if we remove this. I'm not sure if it is completely possible.

Whether or not this actually causes a problem depends on your combination of bundled code in the ruby release and the gem installed.
Comment 5 Hans de Graaff gentoo-dev Security 2014-10-26 10:16:43 UTC
We are properly unbundling the json code from the ruby ebuilds, but only at installation time. At that time the build-id files are already generated and given that they don't have normal filenames we cannot unbundle them when we unbundle the rest of the json code. I'm not sure how we can fix this. Hopefully there will be changes in the toolchain class that will help us fix this somehow.
Comment 6 Hans de Graaff gentoo-dev Security 2014-10-27 19:33:31 UTC
The toolchain.eclass change that caused this has been reverted for now. Please see https://bugs.gentoo.org/show_bug.cgi?id=526144#c5 on how to remedy this for existing systems that are affected.
Comment 7 Hans de Graaff gentoo-dev Security 2014-11-08 16:13:02 UTC
*** Bug 528652 has been marked as a duplicate of this bug. ***
Comment 8 Hans de Graaff gentoo-dev Security 2015-01-05 06:48:30 UTC
*** Bug 534600 has been marked as a duplicate of this bug. ***