well, making a generality based on your personal experience seems a bit overreacting.that I would not run into so many packages that fail to compile, except in a few random improbable cases
As you've certainly read in the thread, this was not gcc-4.1 in cause, but glibc-2.4 upgrade. this kind of thing happening is obvious on ABI changes, and this was only c++ programs which were affected. there is really no other solution than 1. do the upgrade and willingly wait for the end of rebuilding. or 2. postpone the upgrade to a more appropried time. that is, if you wished to upgrade at all.And in the meanwihle, a number of programs I use daily are straight-up broken until they and their dependencies re-emerge.
Code: Select all
# emerge -eav system
# emerge -eav worldIf a package fails during emerge -e system or emerge -e world, you can resume operation with emerge --resume. If a package fails repeatedly, skip it with emerge --resume --skipfirst. Don't run any other instances of emerge in between or you will lose the resume information.
Code: Select all
gcc-config --list-profiles
Code: Select all
fix_libtool_files.sh 3.3.6
instead of
fix_libtool_files.sh 3.4.6 {example from the guide}
Code: Select all
Here is how the USE is like for the compile:
[ebuild NS ] sys-devel/gcc-4.1.1-r1 USE="fortran gtk nls (-altivec) -bootstrap -build -doc -gcj (-hardened) -ip28 -ip32r10k -mudflap (-multilib) -multislot (-n32) (-n64) -nocxx -objc -objc++ -objc-gc -test -vanilla" 0 kB
Code: Select all
It dies once it gets to this point:
....
stage1/xgcc -Bstage1/ -B/usr/i686-pc-linux-gnu/bin/ -c -O2 -march=i686 -pipe -fprofile-generate -DIN_GCC -W -Wall -Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes -pedantic -Wno-long-long -Wno-variadic-macros -Wold-style-definition -Wmissing-format-attribute -DHAVE_CONFIG_H -DGENERATOR_FILE -I. -Ibuild -I/var/tmp/portage/gcc-4.1.1-r1/work/gcc-4.1.1/gcc -I/var/tmp/portage/gcc-4.1.1-r1/work/gcc-4.1.1/gcc/build -I/var/tmp/portage/gcc-4.1.1-r1/work/gcc-4.1.1/gcc/../include -I/var/tmp/portage/gcc-4.1.1-r1/work/gcc-4.1.1/gcc/../libcpp/include -o build/genattrtab.o /var/tmp/portage/gcc-4.1.1-r1/work/gcc-4.1.1/gcc/genattrtab.c
stage1/xgcc -Bstage1/ -B/usr/i686-pc-linux-gnu/bin/ -c -O2 -march=i686 -pipe -fprofile-generate -DIN_GCC -W -Wall -Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes -pedantic -Wno-long-long -Wno-variadic-macros -Wold-style-definition -Wmissing-format-attribute -DHAVE_CONFIG_H -DGENERATOR_FILE -I. -Ibuild -I/var/tmp/portage/gcc-4.1.1-r1/work/gcc-4.1.1/gcc -I/var/tmp/portage/gcc-4.1.1-r1/work/gcc-4.1.1/gcc

Code: Select all
checking whether the C compiler (gcc -O2 -pipe ) works... no
configure: error: installation or configuration problem: C compiler cannot create executables.
!!! ERROR: sys-devel/gcc-4.1.1-r1 failed.
Call stack:
ebuild.sh, line 1546: Called dyn_compile
ebuild.sh, line 937: Called src_compile
ebuild.sh, line 1255: Called toolchain_src_compile
toolchain.eclass, line 24: Called gcc_src_compile
toolchain.eclass, line 1527: Called gcc_do_configure
toolchain.eclass, line 1327: Called die
!!! failed to run configure
!!! If you need support, post the topmost build error, and the call stack if relevant.Code: Select all
diamond ~ # gcc-config -l
[1] i386-pc-linux-gnu-3.3.6 *
[2] i386-pc-linux-gnu-3.3.6-hardened
[3] i386-pc-linux-gnu-3.3.6-hardenednopie
[4] i386-pc-linux-gnu-3.3.6-hardenednopiessp
[5] i386-pc-linux-gnu-3.3.6-hardenednossp
[6] i386-pc-linux-gnu-3.4.5
[7] i386-pc-linux-gnu-3.4.5-hardened
[8] i386-pc-linux-gnu-3.4.5-hardenednopie
[9] i386-pc-linux-gnu-3.4.5-hardenednopiessp
[10] i386-pc-linux-gnu-3.4.5-hardenednossp
[11] i386-pc-linux-gnu-4.1.1
Code: Select all
diamond ~ # binutils-config -l
[1] i686-pc-linux-gnu-2.16.1 *