FEATURES="collision-protect" fails with: existing file /usr/lib/classpath/libgjsmalsa.la is not owned by this package
After the recent stabilization of gcc-4.1.1 I also ran into this problem. -------------- >>> Completed installing gcc-4.1.1 into /var/tmp/portage/gcc-4.1.1/image/ man: * checking 3299 files for package collisions existing file /usr/lib/pkgconfig/libgcj.pc is not owned by this package existing file /usr/lib/classpath/libgjsmalsa.la is not owned by this package 1000 files checked ... 2000 files checked ... 3000 files checked ... existing file /usr/lib/classpath/libgjsmalsa.so is not owned by this package * spent 0.72280216217 seconds checking for file collisions * This package is blocked because it wants to overwrite * files belonging to other packages (see messages above). * If you have no clue what this is all about report it * as a bug for this package on http://bugs.gentoo.org package sys-devel/gcc-4.1.1 NOT merged -------------- -------------- equery belongs /usr/lib/pkgconfig/libgcj.pc [ Searching for file(s) /usr/lib/pkgconfig/libgcj.pc in *... ] sys-devel/gcc-3.4.6-r1 (/usr/lib/pkgconfig/libgcj.pc) equery belongs /usr/lib/classpath/libgjsmalsa.la [ Searching for file(s) /usr/lib/classpath/libgjsmalsa.la in *... ] dev-java/gnu-classpath-0.90 (/usr/lib/classpath/libgjsmalsa.la) --------------
(In reply to comment #1) > equery belongs /usr/lib/pkgconfig/libgcj.pc > [ Searching for file(s) /usr/lib/pkgconfig/libgcj.pc in *... ] > sys-devel/gcc-3.4.6-r1 (/usr/lib/pkgconfig/libgcj.pc) This is tracked in bug 145741.
This might be the same bug... revdep-rebuild shows: broken /usr/lib/gcc/i686-pc-linux-gnu/3.4.6/lib-org-w3c-dom.la (requires /usr/lib/libgcj.la) broken /usr/lib/gcc/i686-pc-linux-gnu/3.4.6/lib-org-xml-sax.la (requires /usr/lib/libgcj.la) broken /usr/lib/gcc/i686-pc-linux-gnu/4.1.1/libgij.la (requires /usr/lib/libgcj.la) After a emerge of gcc 3.4.6 and 4.1.1 it shows the same, still these broken dependences. # find /usr -name libgcj.la /usr/lib/gcc/i686-pc-linux-gnu/3.4.6/libgcj.la /usr/lib/gcc/i686-pc-linux-gnu/4.1.1/libgcj.la It's not finding these version specific libgcj.la files.
This is a bug in gcc. The collision between libgjsmalsa and gnuclasspath has been fixed upstream in 4.2 (where it's been renamed to a gcc-specific name), but they're not going to back-port that change to 4.1. Maybe we can backport that change locally.
*** Bug 136385 has been marked as a duplicate of this bug. ***
post URL to relevant changesets / PRs ...
just gotta find 'em first :) My source is: http://gcc.gnu.org/ml/gcc/2006-07/msg00419.html
also upstream PR27890: http://gcc.gnu.org/PR27890 reduced down into this simple guy: http://sources.gentoo.org/gentoo/src/patchsets/gcc/4.1.2/gentoo/60_all_gcc41-libjava-PR27890.patch?rev=1.1