Summary: | sys-devel/gcc-4.1.2[d] fails to build | ||
---|---|---|---|
Product: | Gentoo Linux | Reporter: | Timothy Stotts <devel> |
Component: | [OLD] Core system | Assignee: | Gentoo Toolchain Maintainers <toolchain> |
Status: | RESOLVED WONTFIX | ||
Severity: | normal | CC: | bircoph, ericvw |
Priority: | High | ||
Version: | unspecified | ||
Hardware: | AMD64 | ||
OS: | Linux | ||
Whiteboard: | |||
Package list: | Runtime testing required: | --- | |
Attachments: |
emerge --info
emerge --info make.conf emerge --info build.log for emerge =gcc-4.1.2 |
Created attachment 206030 [details]
emerge --info
More details: USE="d doc fortran gcj gtk libffi mudflap nls nptl objc objc++ objc-gc test" \ CFLAGS="-pipe -O2 -march=nocona -mtune=nocona" \ CXXFLAGS=$CFLAGS \ MAKEOPTS="-j5" \ emerge =sys-devel/gcc-4.1.2 fails. Now, please dig a little bit deeper into your build.log - with '-j5', what you've posted isn't enough. (In reply to comment #3) > Now, please dig a little bit deeper into your build.log > - with '-j5', what you've posted isn't enough. > With MAKEOPTS="-j1", the emerge fails with the following log message. mkdir -p -- x86_64-pc-linux-gnu/libphobos Configuring in x86_64-pc-linux-gnu/libphobos configure: creating cache ./config.cache checking build system type... x86_64-pc-linux-gnu checking host system type... x86_64-pc-linux-gnu checking target system type... x86_64-pc-linux-gnu checking for a BSD-compatible install... /usr/bin/install -c checking whether build environment is sane... yes checking for gawk... gawk checking whether make sets $(MAKE)... yes checking for x86_64-pc-linux-gnu-gcc... /var/tmp/portage/sys-devel/gcc-4.1.2/work/build/./gcc/xgcc -B/var/tmp/portage/sys-devel/gcc-4.1.2/work/build/./gcc/ -B/usr/x86_64-pc-linux-gnu/bin/ -B/usr/x86_64-pc-linux-gnu/lib/ -isystem /usr/x86_64-pc-linux-gnu/include -isystem /usr/x86_64-pc-linux-gnu/sys-include checking for C compiler default output file name... a.out checking whether the C compiler works... yes checking whether we are cross compiling... yes checking for suffix of executables... checking for suffix of object files... o checking whether we are using the GNU C compiler... yes checking whether /var/tmp/portage/sys-devel/gcc-4.1.2/work/build/./gcc/xgcc -B/var/tmp/portage/sys-devel/gcc-4.1.2/work/build/./gcc/ -B/usr/x86_64-pc-linux-gnu/bin/ -B/usr/x86_64-pc-linux-gnu/lib/ -isystem /usr/x86_64-pc-linux-gnu/include -isystem /usr/x86_64-pc-linux-gnu/sys-include accepts -g... yes checking for /var/tmp/portage/sys-devel/gcc-4.1.2/work/build/./gcc/xgcc -B/var/tmp/portage/sys-devel/gcc-4.1.2/work/build/./gcc/ -B/usr/x86_64-pc-linux-gnu/bin/ -B/usr/x86_64-pc-linux-gnu/lib/ -isystem /usr/x86_64-pc-linux-gnu/include -isystem /usr/x86_64-pc-linux-gnu/sys-include option to accept ANSI C... none needed checking for x86_64-pc-linux-gnu-g++... /var/tmp/portage/sys-devel/gcc-4.1.2/work/build/./gcc/g++ -B/var/tmp/portage/sys-devel/gcc-4.1.2/work/build/./gcc/ -nostdinc++ -L/var/tmp/portage/sys-devel/gcc-4.1.2/work/build/x86_64-pc-linux-gnu/libstdc++-v3/src -L/var/tmp/portage/sys-devel/gcc-4.1.2/work/build/x86_64-pc-linux-gnu/libstdc++-v3/src/.libs -B/usr/x86_64-pc-linux-gnu/bin/ -B/usr/x86_64-pc-linux-gnu/lib/ -isystem /usr/x86_64-pc-linux-gnu/include -isystem /usr/x86_64-pc-linux-gnu/sys-include checking whether we are using the GNU C++ compiler... yes checking whether /var/tmp/portage/sys-devel/gcc-4.1.2/work/build/./gcc/g++ -B/var/tmp/portage/sys-devel/gcc-4.1.2/work/build/./gcc/ -nostdinc++ -L/var/tmp/portage/sys-devel/gcc-4.1.2/work/build/x86_64-pc-linux-gnu/libstdc++-v3/src -L/var/tmp/portage/sys-devel/gcc-4.1.2/work/build/x86_64-pc-linux-gnu/libstdc++-v3/src/.libs -B/usr/x86_64-pc-linux-gnu/bin/ -B/usr/x86_64-pc-linux-gnu/lib/ -isystem /usr/x86_64-pc-linux-gnu/include -isystem /usr/x86_64-pc-linux-gnu/sys-include accepts -g... yes checking for a BSD-compatible install... /usr/bin/install -c checking whether make sets $(MAKE)... (cached) yes checking If /var/tmp/portage/sys-devel/gcc-4.1.2/work/build/./gcc/gdc -B/var/tmp/portage/sys-devel/gcc-4.1.2/work/build/./gcc/ -B/usr/x86_64-pc-linux-gnu/bin/ -B/usr/x86_64-pc-linux-gnu/lib/ -isystem /usr/x86_64-pc-linux-gnu/include -isystem /usr/x86_64-pc-linux-gnu/sys-include can compile D sources... /var/tmp/portage/sys-devel/gcc-4.1.2/work/build/./gcc/cc1d: /var/tmp/portage/sys-devel/gcc-4.1.2/work/build/./gcc/libgcc_s.so.1: version `GCC_4.2.0' not found (required by /usr/lib/gcc/x86_64-pc-linux-gnu/4.3.2/libstdc++.so.6) no configure: error: can't compile D sources! make[2]: *** [configure-target-libphobos] Error 1 make[2]: Leaving directory `/var/tmp/portage/sys-devel/gcc-4.1.2/work/build' make[1]: *** [all] Error 2 make[1]: Leaving directory `/var/tmp/portage/sys-devel/gcc-4.1.2/work/build' make: *** [bootstrap-lean] Error 2 * * ERROR: sys-devel/gcc-4.1.2 failed. * Call stack: * ebuild.sh, line 49: Called src_compile * environment, line 4952: Called toolchain_src_compile * environment, line 5479: Called gcc_src_compile * environment, line 3149: Called gcc_do_make * environment, line 2939: Called die * The specific snippet of code: * emake LDFLAGS="${LDFLAGS}" STAGE1_CFLAGS="${STAGE1_CFLAGS}" LIBPATH="${LIBPATH}" BOOT_CFLAGS="${BOOT_CFLAGS}" ${GCC_MAKE_TARGET} || die "emake failed with ${GCC_MAKE_TARGET}"; * The die message: * emake failed with bootstrap-lean * * If you need support, post the topmost build error, and the call stack if relevant. * A complete build log is located at '/var/log/portage/sys-devel:gcc-4.1.2:20091004-191638.log'. * The ebuild environment file is located at '/var/tmp/portage/sys-devel/gcc-4.1.2/temp/environment'. * The compilation succeeds with with USE='-d'; but it is still a bug. Created attachment 206467 [details]
emerge --info
Here is my emerge --info
(In reply to comment #6) > Created an attachment (id=206467) [details] > emerge --info > > Here is my emerge --info > Looking at my build.log, it looks like it has to do with -march=core2 not being recognized by gcc 4.1.2. I don't know what a good value would be to put in here as a replacement for 4.1.2. cc-4.1.2/work/build/gcc/../ld -O2 -O2 -O2 -pipe -march=core2 -DIN_GCC -W -Wall -Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes -Wold-style-definition -isystem ./include -fPIC -g -DHAVE_GTHR_DEFAULT -DIN_LIBGCC2 -D__GCC_FLOAT_NOT_NEEDED -msse -c \ /var/tmp/portage/sys-devel/gcc-4.1.2/work/gcc-4.1.2/gcc/config/i386/crtfastmath.c \ -o crtfastmath.o /var/tmp/portage/sys-devel/gcc-4.1.2/work/gcc-4.1.2/gcc/config/i386/crtfastmath.c:1: error: bad value (core2) for -march= switch /var/tmp/portage/sys-devel/gcc-4.1.2/work/gcc-4.1.2/gcc/config/i386/crtfastmath.c:1: error: bad value (core2) for -mtune= switch make[2]: *** [crtfastmath.o] Error 1 make[2]: *** Waiting for unfinished jobs.... /bin/sh /var/tmp/portage/sys-devel/gcc-4.1.2/work/gcc-4.1.2/gcc/../move-if-change tmp-macro_list macro_list echo timestamp > s-macro_list
> Looking at my build.log, it looks like it has to do with -march=core2 not being
> recognized by gcc 4.1.2. I don't know what a good value would be to put in
> here as a replacement for 4.1.2.
The predecessor to the -march=core2 options is -march=nocona for 64-bit systems and -march=prescott for 32-bit systems.
The original compilation failure is not due to CFLAGS, but rather to USE='d'.
Regards.
Created attachment 206721 [details]
make.conf
I was able to compile =gcc-4.1.2 with gcc 4.4.1 with the following make.conf.
(In reply to comment #9) > I was able to compile =gcc-4.1.2 with gcc 4.4.1 with the following make.conf. Thank you for your input. However, the bug is that older versions of gcc fail to compile with USE='d'. Please discontinue reporting unrelated information. *** Bug 295480 has been marked as a duplicate of this bug. *** Created attachment 267987 [details]
emerge --info
Created attachment 267989 [details]
build.log for emerge =gcc-4.1.2
I have gcc-4.1.2 failing to build with the same error, even without USE=d. For me, the failure occurs when building libstdc++. I attached my emerge --info at attachment 267987 [details] and my build.log at attachment 267989 [details] (it was 2.6MB, so I actually attached build.log.bz2). For quick reference: gcc-config -c: x86_64-pc-linux-gnu-4.4.5 USE flags: doc fortran gtk mudflap (multilib) nls nptl CFLAGS="-O2 -march=nocona -pipe" And here is the failure message: Making all in po make[5]: Entering directory `/var/tmp/portage/sys-devel/gcc-4.1.2/work/build/x86_64-pc-linux-gnu/libstdc++-v3/po' msgfmt -o de.mo /var/tmp/portage/sys-devel/gcc-4.1.2/work/gcc-4.1.2/libstdc++-v3/po/de.po msgfmt: /var/tmp/portage/sys-devel/gcc-4.1.2/work/build/./gcc/libgcc_s.so.1: version `GCC_4.2.0' not found (required by /usr/lib/gcc/x86_64-pc-linux-gnu/4.4.5/libstdc++.so.6) make[5]: *** [de.mo] Error 1 For me, adding USE="-nls" gets gcc-4.1.2 compiling. This is good enough for me, since I just need v4.1 around for compiling old projects. Still seems like an important bug, though. this bug is only about the original reporter's build failure with USE=d everyone else is a different bug (In reply to comment #16) > this bug is only about the original reporter's build failure with USE=d > > everyone else is a different bug Okay, sorry; I filed bug 372337 for when the same error occurs with USE=nls. (In reply to comment #17) > (In reply to comment #16) > > this bug is only about the original reporter's build failure with USE=d > > > > everyone else is a different bug > > Okay, sorry; I filed bug 372337 for when the same error occurs with USE=nls. Er... I can't spell. I filed bug 372377. |
=sys-devel/gcc-4.1.2 fails to compile and on AMD64. Reproducible: Always Steps to Reproduce: 1. CFLAGS="-pipe -O2 -march=nocona -mtune=nocona" \ CXXFLAGS=$CFLAGS \ emerge =sys-devel/gcc-4.1.2 2. Mysteriously fails to compile. Actual Results: gcc 4.1.2 fails to emerge successfully due to compilation failure Expected Results: gcc 4.1.2 should emerge successfully /var/tmp/portage/sys-devel/gcc-4.1.2/work/build/./gcc/xgcc -shared-libgcc -B/var/tmp/portage/sys-devel/gcc-4.1.2/work/build/./gcc -nostdinc++ -L/var/tmp/portage/sys-devel/gcc-4.1.2/work/build/x86_64-pc-linux-gnu/32/libstdc++-v3/src -L/var/tmp/portage/sys-devel/gcc-4.1.2/work/build/x86_64-pc-linux-gnu/32/libstdc++-v3/src/.libs -B/usr/x86_64-pc-linux-gnu/bin/ -B/usr/x86_64-pc-linux-gnu/lib/ -isystem /usr/x86_64-pc-linux-gnu/include -isystem /usr/x86_64-pc-linux-gnu/sys-include -m32 -Winvalid-pch -Wno-deprecated -x c++-header -pipe -O2 -march=nocona -mtune=nocona -D_GNU_SOURCE -I/var/tmp/portage/sys-devel/gcc-4.1.2/work/build/x86_64-pc-linux-gnu/32/libstdc++-v3/include/x86_64-pc-linux-gnu -I/var/tmp/portage/sys-devel/gcc-4.1.2/work/build/x86_64-pc-linux-gnu/32/libstdc++-v3/include -I/var/tmp/portage/sys-devel/gcc-4.1.2/work/gcc-4.1.2/libstdc++-v3/libsupc++ /var/tmp/portage/sys-devel/gcc-4.1.2/work/gcc-4.1.2/libstdc++-v3/include/stdc++.h -O0 -g -o ./x86_64-pc-linux-gnu/bits/stdc++.h.gch/O0g.gch; \ /var/tmp/portage/sys-devel/gcc-4.1.2/work/build/./gcc/xgcc -shared-libgcc -B/var/tmp/portage/sys-devel/gcc-4.1.2/work/build/./gcc -nostdinc++ -L/var/tmp/p ortage/sys-devel/gcc-4.1.2/work/build/x86_64-pc-linux-gnu/32/libstdc++-v3/src -L/ var/tmp/portage/sys-devel/gcc-4.1.2/work/build/x86_64-pc-linux-gnu/32/libstdc++-v 3/src/.libs -B/usr/x86_64-pc-linux-gnu/bin/ -B/usr/x86_64-pc-linux-gnu/lib/ -isys tem /usr/x86_64-pc-linux-gnu/include -isystem /usr/x86_64-pc-linux-gnu/sys-includ e -m32 -Winvalid-pch -Wno-deprecated -x c++-header -pipe -O2 -march=nocona -mtun e=nocona -D_GNU_SOURCE -I/var/tmp/portage/sys-devel/gcc-4.1.2/work/build/x86_64- pc-linux-gnu/32/libstdc++-v3/include/x86_64-pc-linux-gnu -I/var/tmp/portage/sys-d evel/gcc-4.1.2/work/build/x86_64-pc-linux-gnu/32/libstdc++-v3/include -I/var/tmp/ portage/sys-devel/gcc-4.1.2/work/gcc-4.1.2/libstdc++-v3/libsupc++ /var/tmp/portag e/sys-devel/gcc-4.1.2/work/gcc-4.1.2/libstdc++-v3/include/stdc++.h -O2 -g -o ./x8 6_64-pc-linux-gnu/bits/stdc++.h.gch/O2g.gch; make[3]: Leaving directory `/var/tmp/portage/sys-devel/gcc-4.1.2/work/build/x86_6 4-pc-linux-gnu/32/libstdc++-v3/include' config.status: executing default commands make[3]: Entering directory `/var/tmp/portage/sys-devel/gcc-4.1.2/work/build/x86_ 64-pc-linux-gnu/libstdc++-v3/include' echo timestamp > stamp-assoc sed -e '/^#pragma/b' \ -e '/^#/s/\([ABCDEFGHIJKLMNOPQRSTUVWXYZ_][ABCDEFGHIJKLMNOPQRSTUVWXYZ_ ]*\)/_GLIBCXX_\1/g' \ -e 's/_GLIBCXX_SUPPORTS_WEAK/__GXX_WEAK__/g' \ -e 's,^#include "\(.*\)",#include <bits/\1>,g' \ < /var/tmp/portage/sys-devel/gcc-4.1.2/work/gcc-4.1.2/libstdc++-v3/.. /gcc/gthr.h > x86_64-pc-linux-gnu/bits/gthr.h sed -e 's/\(UNUSED\)/_GLIBCXX_\1/g' \ -e 's/\(GCC[ABCDEFGHIJKLMNOPQRSTUVWXYZ_]*_H\)/_GLIBCXX_\1/g' \ < /var/tmp/portage/sys-devel/gcc-4.1.2/work/gcc-4.1.2/libstdc++-v3/../gcc/gthr-single.h > x86_64-pc-linux-gnu/bits/gthr-single.h sed -e 's/\(UNUSED\)/_GLIBCXX_\1/g' \ -e 's/\(GCC[ABCDEFGHIJKLMNOPQRSTUVWXYZ_]*_H\)/_GLIBCXX_\1/g' \ -e 's/SUPPORTS_WEAK/__GXX_WEAK__/g' \ -e 's/\([ABCDEFGHIJKLMNOPQRSTUVWXYZ_]*USE_WEAK\)/_GLIBCXX_\1/g' \ < /var/tmp/portage/sys-devel/gcc-4.1.2/work/gcc-4.1.2/libstdc++-v3/../gcc/gthr-posix.h > x86_64-pc-linux-gnu/bits/gthr-posix.h sed -e 's/\(UNUSED\)/_GLIBCXX_\1/g' \ -e 's/\(GCC[ABCDEFGHIJKLMNOPQRSTUVWXYZ_]*_H\)/_GLIBCXX_\1/g' \ -e 's/SUPPORTS_WEAK/__GXX_WEAK__/g' \ -e 's/\([ABCDEFGHIJKLMNOPQRSTUVWXYZ_]*USE_WEAK\)/_GLIBCXX_\1/g' \ < /var/tmp/portage/sys-devel/gcc-4.1.2/work/gcc-4.1.2/libstdc++-v3/../gcc/gthr-tpf.h > x86_64-pc-linux-gnu/bits/gthr-tpf.h sed -e 's/\(UNUSED\)/_GLIBCXX_\1/g' \ -e 's/\(GCC[ABCDEFGHIJKLMNOPQRSTUVWXYZ_]*_H\)/_GLIBCXX_\1/g' \ -e 's/SUPPORTS_WEAK/__GXX_WEAK__/g' \ -e 's/\([ABCDEFGHIJKLMNOPQRSTUVWXYZ_]*USE_WEAK\)/_GLIBCXX_\1/g' \ -e 's,^#include "\(.*\)",#include <bits/\1>,g' \ < /var/tmp/portage/sys-devel/gcc-4.1.2/work/gcc-4.1.2/libstdc++-v3/../gcc/gthr-posix.h > x86_64-pc-linux-gnu/bits/gthr-default.h touch ./x86_64-pc-linux-gnu/bits/stdc++.h; \ if [ ! -d "./x86_64-pc-linux-gnu/bits/stdc++.h.gch" ]; then \ mkdir -p ./x86_64-pc-linux-gnu/bits/stdc++.h.gch; \ fi; \ /var/tmp/portage/sys-devel/gcc-4.1.2/work/build/./gcc/xgcc -shared-libgcc -B/var/tmp/portage/sys-devel/gcc-4.1.2/work/build/./gcc -nostdinc++ -L/var/tmp/portage/sys-devel/gcc-4.1.2/work/build/x86_64-pc-linux-gnu/libstdc++-v3/src -L/var/tmp/portage/sys-devel/gcc-4.1.2/work/build/x86_64-pc-linux-gnu/libstdc++-v3/src/.libs -B/usr/x86_64-pc-linux-gnu/bin/ -B/usr/x86_64-pc-linux-gnu/lib/ -isystem /usr/x86_64-pc-linux-gnu/include -isystem /usr/x86_64-pc-linux-gnu/sys-include -Winvalid-pch -Wno-deprecated -x c++-header -pipe -O2 -march=nocona -mtune=nocona -D_GNU_SOURCE -I/var/tmp/portage/sys-devel/gcc-4.1.2/work/build/x86_64-pc-linux-gnu/libstdc++-v3/include/x86_64-pc-linux-gnu -I/var/tmp/portage/sys-devel/gcc-4.1.2/work/build/x86_64-pc-linux-gnu/libstdc++-v3/include -I/var/tmp/portage/sys-devel/gcc-4.1.2/work/gcc-4.1.2/libstdc++-v3/libsupc++ /var/tmp/portage/sys-devel/gcc-4.1.2/work/gcc-4.1.2/libstdc++-v3/include/stdc++.h -O0 -g -o ./x86_64-pc-linux-gnu/bits/stdc++.h.gch/O0g.gch; \ /var/tmp/portage/sys-devel/gcc-4.1.2/work/build/./gcc/xgcc -shared-libgcc -B/var/tmp/portage/sys-devel/gcc-4.1.2/work/build/./gcc -nostdinc++ -L/var/tmp/portage/sys-devel/gcc-4.1.2/work/build/x86_64-pc-linux-gnu/libstdc++-v3/src -L/var/tmp/portage/sys-devel/gcc-4.1.2/work/build/x86_64-pc-linux-gnu/libstdc++-v3/src/.libs -B/usr/x86_64-pc-linux-gnu/bin/ -B/usr/x86_64-pc-linux-gnu/lib/ -isystem /usr/x86_64-pc-linux-gnu/include -isystem /usr/x86_64-pc-linux-gnu/sys-include -Winvalid-pch -Wno-deprecated -x c++-header -pipe -O2 -march=nocona -mtune=nocona -D_GNU_SOURCE -I/var/tmp/portage/sys-devel/gcc-4.1.2/work/build/x86_64-pc-linux-gnu/libstdc++-v3/include/x86_64-pc-linux-gnu -I/var/tmp/portage/sys-devel/gcc-4.1.2/work/build/x86_64-pc-linux-gnu/libstdc++-v3/include -I/var/tmp/portage/sys-devel/gcc-4.1.2/work/gcc-4.1.2/libstdc++-v3/libsupc++ /var/tmp/portage/sys-devel/gcc-4.1.2/work/gcc-4.1.2/libstdc++-v3/include/stdc++.h -O2 -g -o ./x86_64-pc-linux-gnu/bits/stdc++.h.gch/O2g.gch; make[3]: Leaving directory `/var/tmp/portage/sys-devel/gcc-4.1.2/work/build/x86_64-pc-linux-gnu/libstdc++-v3/include' make[2]: Leaving directory `/var/tmp/portage/sys-devel/gcc-4.1.2/work/build' make[1]: *** [all] Error 2 make[1]: Leaving directory `/var/tmp/portage/sys-devel/gcc-4.1.2/work/build' make: *** [bootstrap-lean] Error 2 * * ERROR: sys-devel/gcc-4.1.2 failed. * Call stack: * ebuild.sh, line 49: Called src_compile * environment, line 4952: Called toolchain_src_compile * environment, line 5479: Called gcc_src_compile * environment, line 3149: Called gcc_do_make * environment, line 2939: Called die * The specific snippet of code: * emake LDFLAGS="${LDFLAGS}" STAGE1_CFLAGS="${STAGE1_CFLAGS}" LIBPATH="${LIBPATH}" BOOT_CFLAGS="${BOOT_CFLAGS}" ${GCC_MAKE_TARGET} || die "emake failed with ${GCC_MAKE_TARGET}"; * The die message: * emake failed with bootstrap-lean * * If you need support, post the topmost build error, and the call stack if relevant. * A complete build log is located at '/var/log/portage/sys-devel:gcc-4.1.2:20091004-185259.log'. * The ebuild environment file is located at '/var/tmp/portage/sys-devel/gcc-4.1.2/temp/environment'. * >>> Failed to emerge sys-devel/gcc-4.1.2, Log file: