| View previous topic :: View next topic |
| Author |
Message |
DrChandra n00b

Joined: 31 Mar 2005 Posts: 9
|
Posted: Fri Apr 07, 2006 2:24 pm Post subject: |
|
|
| hex wrote: | Hi,
I got the problem at my fresh 2005.1-install on my server. I installed from stage1 and on "emerge -e system" the problem appeared.
Here is my workaround
| Code: | ln -sf /usr/bin/i686-pc-linux-gnu-gcc /usr/bin/i386-pc-linux-gnu-gcc
emerge python
emerge -e system |
It's not the cleanest solution, but it worked for me
- hex |
At the point of emerging python, add: emerge perl
Perl records the compiler that was used to compile it, and will try to call that specific compiler when it needs to build some C code. You can test this by emerging XML-Parser. If that fails with the gcc-config "Cannot locate" error, perl needs to be recompiled.
There is probably a simpler way to directly fix perl's record of the compiler, but emerge makes certain. |
|
| Back to top |
|
 |
mattV n00b

Joined: 16 Dec 2005 Posts: 4
|
Posted: Tue Apr 25, 2006 9:15 am Post subject: |
|
|
| SilveRo wrote: |
Anyhow, here is what I am using to solve my "wrong stage3 problem (i386 instead of i686, that is in my make.conf)". Let me know if u think it's correct....
| Code: | grep i386-pc-linux-gnu /var/db/pkg/*/*/CHOST -R|cut -d\/ -f5-6
for package in $(grep i386-pc-linux-gnu /var/db/pkg/*/*/CHOST -R|cut -d\/ -f5-6); do emerge =${package}; done
|
|
Thanks a lot for this little script, it really helped me to get my box back in a clean state following this annoying i386-pc-linux-gnu-gcc problem ! |
|
| Back to top |
|
 |
fidel Guru


Joined: 16 Jul 2004 Posts: 382 Location: CH
|
Posted: Fri Apr 28, 2006 6:38 am Post subject: |
|
|
Same problem here, this was the solution!!!
Thanks!!! |
|
| Back to top |
|
 |
netcelli Apprentice

Joined: 29 Nov 2005 Posts: 169
|
Posted: Sun May 14, 2006 7:34 am Post subject: |
|
|
I can't solve this problem; emerge updated gcc version from 3.45. to 3.4.5-r1 ad now I can't compile nothing:
| Quote: |
i386-pc-linux-gnu-gcc -pthread -fno-strict-aliasing -DNDEBUG -march=pentium4 -O2 -fomit-frame-pointer -pipe -fPIC -I/usr/include/python2.4 -c missingos.c -o build/temp.linux-i686-2.4/missingos.o
unable to execute i386-pc-linux-gnu-gcc: No such file or directory
error: command 'i386-pc-linux-gnu-gcc' failed with exit status 1
!!! ERROR: sys-apps/portage-2.0.54-r2 failed.
!!! Function src_compile, Line 53, Exitcode 1
!!! Failed to build missingos module
!!! If you need support, post the topmost build error, NOT this status message
|
I have tried some tips in this topic but nothing.. any idea?
Thank you very much for your help  |
|
| Back to top |
|
 |
natrik n00b

Joined: 05 Jun 2006 Posts: 4
|
Posted: Tue Jun 06, 2006 12:08 am Post subject: rebuild *configs* for gcc toolkit! |
|
|
PREVIOUSLY:
gcc-config error: Could not run/locate "i386-pc-linux-gnu-gcc"
... when I tried to `emerge portage`
SOLUTION:
Okay, so after a little further research and nosing around, I found a much better way to rectify what emerge thinks your build environment looks like. Basically there are profile descriptions which, if incorrect, will cause problems when used. So here's what I did to get things working right (without any goofy symlinks to other gcc's)
0. I got rid of my stupid symlink (mentioned in previous post) in /etc/ - But I did NOT restore the stage-tarball-supplied gcc, gcc32, g++, g++32 which were previously in there.
1. I had a hunch that something in /etc/ was pointing emerge to "i386-pc-linux-gnu-gcc" so I looked for it:
grep i386-pc /etc/*
which found some stuff in these places, among others:
/etc/env.d/
/etc/eselect/compiler
2. Doing `man eselect` didn't find a manpage, so I do `emerge eselect`
3. I read up a little on eselect (heh, well, `eselect --help`) ... and looked in eselect's directory:
ls -lah /etc/eselect/compiler
i686-pc-linux-gnu-3.4.6.conf
i386-pc-linux-gnu-3.4.4.conf
But one of these is not even installed on my system!
4. Since the string "i386-pc-linux-gnu-3.4.4" kept coming up as being a path when I grepped /etc/, and also since it was appearing in all my error messages, (failure to find something in one of those paths!) I deleted this file (make a backup or rename it - just in case) -- it contains bad path information for i386...gcc-3.4.4.
mv /etc/eselect/compiler/i386-pc-linux-gnu-3.4.4.conf /etc/_i386-pc-linux-gnu-3.4.4.OLDconf
5. Then I ran eselect to collect environment variables from all scripts in /etc/env.d/, and force updating of links:
# eselect env update makelinks
Regenerating /etc/ld.so.cache...
Maybe `env-update` was also a part of this command because it rebuilt ld.so.cache.
6. I ran gcc-config next, and it showed me the only version I have installed. (lowercase L btw)
# gcc-config -l
[1] i686-pc-linux-gnu-3.4.6 *
[2] i686-pc-linux-gnu-3.4.6-hardenednopie
[3] i686-pc-linux-gnu-3.4.6-hardenednopiessp
[4] i686-pc-linux-gnu-3.4.6-hardenednossp
[5] i686-pc-linux-gnu-3.4.6-vanilla
7. I forced a regeneration of config files:
# gcc-config -f i686-pc-linux-gnu-3.4.6
* Switching native-compiler to i686-pc-linux-gnu-3.4.6 ...
>>> Regenerating /etc/ld.so.cache...
8. This is the great part... I looked again for "i386-pc" in /etc/
grep -r "i386-pc" /etc/
No matches!
9. At this point I was fairly sure I was done. So I tried emerging portage I had recently done an emerge --sync.
emerge portage
I stuck around long enough to see portage happen CORRECTLY WITHOUT ERRORS yay!
I went ahead and rebuilt the crap out of my system -- I was headed out anyway, and should probably be done by the time I got back. (the second emerge recompiles the toolchain with *itself*
emerge glibc binutils gcc libstdc++-v3 && \
emerge glibc binutils gcc libstdc++-v3 && \
emerge -e system && \
emerge -e world
By the time I got back, it was finished, and I was able to install the other packages I had been having odd errors from (or blatant i386 errors). I have not had any errors with emerge since then.
I hope this works for you guys too. It was pretty easy really. It only took me about 40 minutes to figure out and do it (aside from emerging). I think it took me longer to write all this up.
-- Nate |
|
| Back to top |
|
 |
konsolebox n00b

Joined: 09 Oct 2005 Posts: 7
|
Posted: Fri Jul 21, 2006 9:24 am Post subject: |
|
|
ok so here i've had a problem compiling gaim and also have had the i386-pc-linux-gnu-gcc problem when it comes to the evolution-data-server package
so i followed natrik and have done all the procedures until i reached the second phase of emerge glibc binutils gcc libstdc++-v3
from here i realized that doing emerge -e system and world will be just too long so i considered using the previous script instead:
| Code: | grep i386-pc-linux-gnu /var/db/pkg/*/*/CHOST -R|cut -d\/ -f5-6
for package in $(grep i386-pc-linux-gnu /var/db/pkg/*/*/CHOST -R|cut -d\/ -f5-6); do emerge =${package}; done |
but the problem was there are some packages with versiosn that are too old and are no longer available
so i've no choice but to do emerge -e system but there were some problems recompiling. i even had my pam-login deleted and got my login not available. i fixed the login problem by boot the system through cd-rom of course (2005.1) and connect to the internet using simple settings. then do emerge shadow. only shadow's available as of now and i don't know why my system makes conflict when installing pam-login
anyway i'd like to skip emerge -e system and emerge -e world.
any better ideas? |
|
| Back to top |
|
 |
EliasP Guru


Joined: 06 Dec 2002 Posts: 317 Location: South-West Germany
|
Posted: Wed Aug 23, 2006 12:43 pm Post subject: |
|
|
I've improved my "script" further... I think it's nearly perfect (but not elegant) now.
It uses now the newest available version, when re-emerging a package.
Also, it should be faster than my first one.
| Code: |
emerge -1 $(grep i386-pc-linux-gnu /var/db/pkg/*/*/CHOST -r|cut -d\/ -f5-6|sort -u|sed s/\-r[0-9]*$//g|sed s/\_[a-z]*[0-9]*//g|rev|cut -d\- -f2-|rev|sort -u)
|
Don't ask, I use "sort -u" twice intentionally!
Hope it helps, fixing your broken sys. |
|
| Back to top |
|
 |
xorinox n00b

Joined: 12 Feb 2006 Posts: 24
|
|
| Back to top |
|
 |
mamac l33t


Joined: 29 Feb 2004 Posts: 832
|
Posted: Sat Dec 23, 2006 5:08 pm Post subject: |
|
|
Hi,
Thanks to all for posting helpfull threads! But after reading and trying several solutions found here I'm still unable to compile openoffice...
| Code: |
FRPC285 ~ # emerge Compress-Raw-Zlib
Calculating dependencies... done!
>>> Emerging (1 of 1) dev-perl/Compress-Raw-Zlib-2.001 to /
* Compress-Raw-Zlib-2.001.tar.gz MD5 ;-) ... [ ok ]
* Compress-Raw-Zlib-2.001.tar.gz RMD160 ;-) ... [ ok ]
* Compress-Raw-Zlib-2.001.tar.gz SHA1 ;-) ... [ ok ]
* Compress-Raw-Zlib-2.001.tar.gz SHA256 ;-) ... [ ok ]
* Compress-Raw-Zlib-2.001.tar.gz size ;-) ... [ ok ]
* checking ebuild checksums ;-) ... [ ok ]
* checking auxfile checksums ;-) ... [ ok ]
* checking miscfile checksums ;-) ... [ ok ]
* checking Compress-Raw-Zlib-2.001.tar.gz ;-) ... [ ok ]
>>> Unpacking source...
>>> Unpacking Compress-Raw-Zlib-2.001.tar.gz to /var/tmp/portage/Compress-Raw-Zlib-2.001/work
>>> Source unpacked.
>>> Compiling source in /var/tmp/portage/Compress-Raw-Zlib-2.001/work/Compress-Raw-Zlib-2.001 ...
/var/tmp/portage/Compress-Raw-Zlib-2.001/work/Compress-Raw-Zlib-2.001
* Using ExtUtils::MakeMaker
Parsing config.in...
Building Zlib enabled
Auto Detect Gzip OS Code..
Setting Gzip OS Code to 3 [Unix/Default]
Looks Good.
Up/Downgrade not needed.
Checking if your kit is complete...
Looks good
Writing Makefile for Compress::Raw::Zlib
cp lib/Compress/Raw/Zlib.pm blib/lib/Compress/Raw/Zlib.pm
AutoSplitting blib/lib/Compress/Raw/Zlib.pm (blib/lib/auto/Compress/Raw/Zlib)
/usr/bin/perl5.8.8 /usr/lib/perl5/5.8.8/ExtUtils/xsubpp -typemap /usr/lib/perl5/5.8.8/ExtUtils/typemap -typemap typemap Zlib.xs > Zlib.xsc && mv Zlib.xsc Zlib.c
i386-pc-linux-gnu-gcc -c -I./zlib-src -fno-strict-aliasing -pipe -Wdeclaration-after-statement -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -I/usr/include/gdbm -O2 -mtune=i686 -pipe -DVERSION=\"2.001\" -DXS_VERSION=\"2.001\" -fPIC "-I/usr/lib/perl5/5.8.8/i386-linux/CORE" -DGZIP_OS_CODE=3 Zlib.c
gcc-config error: Could not run/locate "i386-pc-linux-gnu-gcc"
make: *** [Zlib.o] Error 1
!!! ERROR: dev-perl/Compress-Raw-Zlib-2.001 failed.
Call stack:
ebuild.sh, line 1546: Called dyn_compile
ebuild.sh, line 937: Called src_compile
ebuild.sh, line 1255: Called perl-module_src_compile
perl-module.eclass, line 138: Called die
!!! compilation failed
!!! If you need support, post the topmost build error, and the call stack if relevant.
|
gcc-config -l gives:
| Code: |
FRPC285 ~ # gcc-config -l
[1] i686-pc-linux-gnu-4.1.1 *
|
emerge --info:
| Code: |
FRPC285 ~ # emerge --info
Portage 2.1.1-r2 (default-linux/x86/2006.1/desktop, gcc-4.1.1, glibc-2.4-r4, 2.6.18-gentoo-r4 i686)
=================================================================
System uname: 2.6.18-gentoo-r4 i686 Genuine Intel(R) CPU U2500 @ 1.20GHz
Gentoo Base System version 1.12.6
Last Sync: Fri, 22 Dec 2006 18:30:01 +0000
app-admin/eselect-compiler: [Not Present]
dev-java/java-config: 1.3.7, 2.0.30
dev-lang/python: 2.4.3-r4
dev-python/pycrypto: 2.0.1-r5
dev-util/ccache: [Not Present]
dev-util/confcache: [Not Present]
sys-apps/sandbox: 1.2.17
sys-devel/autoconf: 2.13, 2.60
sys-devel/automake: 1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r2
sys-devel/binutils: 2.16.1-r3
sys-devel/gcc-config: 1.3.14
sys-devel/libtool: 1.5.22
virtual/os-headers: 2.6.17-r2
ACCEPT_KEYWORDS="x86"
AUTOCLEAN="yes"
CBUILD="i686-pc-linux-gnu"
CFLAGS="-march=prescott -O2 -pipe -fomit-frame-pointer"
CHOST="i686-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/kde/3.5/env /usr/kde/3.5/share/config /usr/kde/3.5/shutdown /usr/share/X11/xkb /usr/share/config"
CONFIG_PROTECT_MASK="/etc/env.d /etc/env.d/java/ /etc/gconf /etc/java-config/vms/ /etc/revdep-rebuild /etc/terminfo"
CXXFLAGS="-march=prescott -O2 -pipe -fomit-frame-pointer"
DISTDIR="/usr/portage/distfiles"
FEATURES="autoconfig distlocks metadata-transfer sandbox sfperms strict"
GENTOO_MIRRORS="http://gentoo.modulix.net/gentoo/ http://ftp.club-internet.fr/pub/mirrors/gentoo ftp://gentoo.imj.fr/pub/gentoo/ ftp://ftp.du.se/pub/os/gentoo http://ftp.du.se/pub/os/gentoo http://ds.thn.htu.se/linux/gentoo "
MAKEOPTS="-j3"
PKGDIR="/usr/portage/packages"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --delete-after --stats --timeout=180 --exclude='/distfiles' --exclude='/local' --exclude='/packages'"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
SYNC="rsync://rsync.gentoo.org/gentoo-portage"
USE="x86 X acpi alsa alsa_cards_ali5451 alsa_cards_als4000 alsa_cards_atiixp alsa_cards_atiixp-modem alsa_cards_bt87x alsa_cards_ca0106 alsa_cards_cmipci alsa_cards_emu10k1x alsa_cards_ens1370 alsa_cards_ens1371 alsa_cards_es1938 alsa_cards_es1968 alsa_cards_fm801 alsa_cards_hda-intel alsa_cards_intel8x0 alsa_cards_intel8x0m alsa_cards_maestro3 alsa_cards_trident alsa_cards_usb-audio alsa_cards_via82xx alsa_cards_via82xx-modem alsa_cards_ymfpci alsa_pcm_plugins_adpcm alsa_pcm_plugins_alaw alsa_pcm_plugins_asym alsa_pcm_plugins_copy alsa_pcm_plugins_dmix alsa_pcm_plugins_dshare alsa_pcm_plugins_dsnoop alsa_pcm_plugins_empty alsa_pcm_plugins_extplug alsa_pcm_plugins_file alsa_pcm_plugins_hooks alsa_pcm_plugins_iec958 alsa_pcm_plugins_ioplug alsa_pcm_plugins_ladspa alsa_pcm_plugins_lfloat alsa_pcm_plugins_linear alsa_pcm_plugins_meter alsa_pcm_plugins_mulaw alsa_pcm_plugins_multi alsa_pcm_plugins_null alsa_pcm_plugins_plug alsa_pcm_plugins_rate alsa_pcm_plugins_route alsa_pcm_plugins_share alsa_pcm_plugins_shm alsa_pcm_plugins_softvol apm arts berkdb bitmap-fonts cairo cdparanoia cdr cli cracklib crypt cups dbus dlloader dri dvd dvdr eds elibc_glibc emboss encode esd fam firefox fortran gdbm gif gpm gstreamer hal iconv input_devices_keyboard input_devices_mouse ipv6 isdnlog java jpeg kde kernel_linux ldap libg++ lm_sensors mad mikmod mp3 mpeg ncurses nls nptl nptlonly ogg opengl oss pam pcre pdf perl pmu png ppds pppd python qt qt3 qt4 quicktime readline reflection sdl session spell spl ssl symlink tcpd truetype truetype-fonts type1-fonts udev unicode userland_GNU video_cards_i810 vorbis win32codecs xml xorg xscreensaver xv zlib"
Unset: CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LANG, LC_ALL, LDFLAGS, LINGUAS, PORTAGE_RSYNC_EXTRA_OPTS, PORTDIR_OVERLAY
|
Same problem found here. Any idea appriciated, many thanks! _________________ Powered by (x86) Gentoo Linux since 2003 |
|
| Back to top |
|
 |
Theron NightStar n00b

Joined: 21 Jan 2007 Posts: 7
|
Posted: Wed Jan 31, 2007 4:44 pm Post subject: |
|
|
| Quote: |
| Code: | damac # cat i386-pc-linux-gnu-gcc
#!/bin/sh
/usr/bin/i686-pc-linux-gnu-gcc "$@"
damac # pwd
/usr/bin
damac #
|
Don't forget to chmod +x i386-pc-linux-gnu-gcc after you create it.
To make it generic... create the script based on the oldarch it is complaining about not running/locating (in this example i386-pc-linux-gnu-gcc) invoking the newarch CHOST type gcc compiler (i686-pc-linux-gnu-gcc in this example).
Hope this helps!
Greg. |
Nice - cleared it right up. Had to mv the i386-pc-linux-gnu-gcc that was there first, but it worked like a champ. You da man! |
|
| Back to top |
|
 |
smiffy Apprentice


Joined: 28 Jun 2006 Posts: 259 Location: SA.AU.AP.EARTH
|
Posted: Sun May 06, 2007 11:19 pm Post subject: |
|
|
I had an update of file break a couple of months ago and ended up having to unemerge it and copy all the necessary components from an (all but) identical machine.
Having had a final try at fixing it, I have gone through the various ideas listed in this thread. The only one that touched it is the script:
| Code: | #!/bin/sh
/usr/bin/i686-pc-linux-gnu-gcc "$@" |
Thanks to Greg for that one - simplest solution and the only one that works!
Update: this also fixed the build failure of dev-perl/Net-SSLeay-1.30, which was giving a completely different error message. _________________ Matthew Smith |
|
| Back to top |
|
 |
Raqua n00b

Joined: 09 May 2007 Posts: 3
|
Posted: Wed May 09, 2007 3:00 pm Post subject: |
|
|
I tried everything mentioned here, but it did not solved my problem. I am not sure how, but I found out, that I needed to rebuild Perl as well.
Usage of
| Code: |
perl-cleaner reallyall
|
was also needed for me. I am not sure though if I used it before or after emerging Perl. If you could not build Perl then you need to use it first probably.
Hope it helps. |
|
| Back to top |
|
 |
|
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
|