Since the jump from -r1 to -r2 on Feb 25, I cannot update my cross compilers. It fails with: checking for suffix of object files... configure: error: in `/var/tmp/portage/cross-i686-pc-linux-gnu/gcc-4.5.3-r2/work/build/i686-pc-linux-gnu/64/libgcc': configure: error: cannot compute suffix of object files: cannot compile See `config.log' for more details. I'll attach the build.log in question. may be related to #394345 Reproducible: Always
Created attachment 303637 [details] config.log with error
Created attachment 303639 [details] emerge --info
Comment on attachment 303637 [details] config.log with error That's the wrong config.log. Please attach the entire build log to this bug report.
Created attachment 303671 [details] build.log.xz
I apologize, I mis-classified this as text/plain, and cannot seem to change it.
please post the cross-i686-pc-linux-gnu-info.log from your logdir, and post *all* the config.log files from gcc. we need those to find out what failed. you can make a tarball like: cd /var/tmp/portage/cross-i686-pc-linux-gnu/gcc-4.5.3-r2/work find -name config.log | tar cf - --files-from=- | xz > logs.tar.xz
Created attachment 303759 [details] Requested logfile
Created attachment 303763 [details] requested config.log tarball
should be fixed by using a newer version of crossdev. your build allowed gcc to be built with USE=multilib and that failed since you don't have a 64bit glibc. can probably also fix by doing: sed -i '/gcc/s:$: -multilib:' /etc/portage/package.use/cross-i686-pc-linux-gnu
The sed trick does not work for me here, and if I do emerge -pv cross-i686-pc-linux-gnu/gcc I get: [ebuild U ] cross-i686-pc-linux-gnu/gcc-4.5.3-r2 [4.5.3-r1] USE="cxx fortran (multilib) nls nptl openmp (-altivec) -bootstrap -build -doc (-fixed-point) -gcj -graphite -gtk -hardened -libffi -libssp -lto -mudflap -multislot -nocxx -nopie -nossp -objc -objc++ -objc-gc -test -vanilla" So does that mean it already knows that it cannot use multilib for that ebuild? Do I need to rebuild the whole toolchain with the more recent crossdev? I have crossdev-20111221 (current stable) installed, but I probably used an older version to generate the original cross-i686-pc-linux-gnu/ family ebuilds. Is there a procedure to get crossdev to "freshen" the ebuilds without going through the whole process of removing and reinstalling the whole toolchain?
probably need to remove it from portage.use.mask too which crossdev would handle for you you don't need to re-install the toolchain. running `crossdev` on an installed target should be safe.
Good to know for next time (I just brute force clean/installed my crossdev toolchains last nite, those machines are fast enough it doesn't matter) In any case, problem solved, and I'll know next time what to try first before filing a bug. I really appreciate the help/patience :)
actually, i don't even know why you're on 20110310. latest stable is 20111221.
No no, I do have 20111221 installed currently, but when I first installed my cross-toolchains (and thus created the /etc/portage entries) it was about a year ago, so I was then running the 20110310 version...