I've got a problem trying to update to the GCC 4.1 beta ebuild. I'm hoping that somebody can help me.
I've successfully gotten past the typical problems with adding the declaration regarding bug reports to make.conf and adding -ffriend-injection to the CXXFLAGS. I'm running into a problem emerging GCC 4.1:
The package appears to emerge fine, but issues the following error after the emerge:
Code: Select all
--- !targe sym /usr/bin/i686-pc-linux-gnu-gcc-4.1.0-beta20051112
--- !targe sym /usr/bin/i686-pc-linux-gnu-g++-4.1.0-beta20051112
--- !targe sym /usr/bin/i686-pc-linux-gnu-c++-4.1.0-beta20051112
--- !targe sym /usr/bin/gfortran-4.1.0-beta20051112
--- !targe sym /usr/bin/gcc-4.1.0-beta20051112
--- !targe sym /usr/bin/g++-4.1.0-beta20051112
--- !targe sym /usr/bin/c++-4.1.0-beta20051112
>>> original instance of package unmerged safely.
/usr/bin/gcc-config: line 632: /etc/env.d/gcc/i686-pc-linux-gnu-3.4.4: No such file or directory
* /usr/bin/gcc-config: Profile does not exist or invalid setting for /etc/env.d/gcc/i686-pc-linux-gnu-3.4.4
* Switching native-compiler to i686-pc-linux-gnu-3.4.4 ...
/usr/bin/gcc-config: line 182: /etc/env.d/gcc/i686-pc-linux-gnu-3.4.4: No such file or directory
gawk: cmd. line:1: fatal: cannot open file `/etc/env.d/gcc/i686-pc-linux-gnu-3.4.4' for reading (No such file or directory [ ok ]
* If you have issues with packages unable to locate libstdc++.la,
* then try running 'fix_libtool_files.sh' on the old gcc versions.
* This gcc-4 ebuild is provided for your convenience, and the use
* of this compiler is not supported by the Gentoo Developers.
* Please file bugs related to gcc-4 with upstream developers.
* Compiler bugs should be filed at http://gcc.gnu.org/bugzilla/
>>> Regenerating /etc/ld.so.cache...
>>> sys-devel/gcc-4.1.0_beta20051112 merged.
>>> clean: No packages selected for removal.
>>> Auto-cleaning packages ...
>>> No outdated packages were found on your system.
* Regenerating GNU info directory index...
* Processed 6 info files.
The problem appears to be that GCC is successfully emerged, but gcc-config appears to be making mistakes at lines 632 and 182 where it assumes that I am upgrading from GCC 3.4.4. I am not. I am upgrading from GCC 4.0.2 and GCC 3.4.4 was trimmed from my system long ago, when I had first emerged GCC 4.0. My GCC 4.0 toolkit has been working fine, but I can't seem to emerge GCC 4.1.
When I look at the output of gcc-config, it is obvious that no GCC compiler has been chosen. This is interestting, as I had previously had GCC 4.0 properly configured via gcc-config, and it seems to have been de-configured during the process of emerging GCC 4.1 beta:
Code: Select all
# gcc-config -l
[1] i686-pc-linux-gnu-4.0.2
[2] i686-pc-linux-gnu-4.1.0-beta20051112
I can successfully set the compiler using "gcc-config 2", but as soon as I perform an "emerge -e system" the gcc-config setting is lost as soon as GCC gets re-emerged. When it gets re-emerged, GCC issues the same errors that Ihad mentioned previously, and gcc-config shows that no compiler is chosen, etc. So I choose "gcc-config 2" again and try to re-emerge and the process repeats itself. I get stuck in an endless loop.
Can anyone tell me how I can fix this problem?