Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
HOWTO 'Could not run/locate "i386-pc-linux-gnu-gcc"
View unanswered posts
View posts from last 24 hours

Goto page Previous  1, 2  
Reply to topic    Gentoo Forums Forum Index Portage & Programming
View previous topic :: View next topic  
Author Message
DrChandra
n00b
n00b


Joined: 31 Mar 2005
Posts: 9

PostPosted: Fri Apr 07, 2006 2:24 pm    Post subject: Reply with quote

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
View user's profile Send private message
mattV
n00b
n00b


Joined: 16 Dec 2005
Posts: 4

PostPosted: Tue Apr 25, 2006 9:15 am    Post subject: Reply with quote

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
View user's profile Send private message
fidel
Guru
Guru


Joined: 16 Jul 2004
Posts: 382
Location: CH

PostPosted: Fri Apr 28, 2006 6:38 am    Post subject: Reply with quote

Same problem here, this was the solution!!!
Thanks!!!
Back to top
View user's profile Send private message
netcelli
Apprentice
Apprentice


Joined: 29 Nov 2005
Posts: 169

PostPosted: Sun May 14, 2006 7:34 am    Post subject: Reply with quote

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
View user's profile Send private message
natrik
n00b
n00b


Joined: 05 Jun 2006
Posts: 4

PostPosted: Tue Jun 06, 2006 12:08 am    Post subject: rebuild *configs* for gcc toolkit! Reply with quote

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
View user's profile Send private message
konsolebox
n00b
n00b


Joined: 09 Oct 2005
Posts: 7

PostPosted: Fri Jul 21, 2006 9:24 am    Post subject: Reply with quote

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
View user's profile Send private message
EliasP
Guru
Guru


Joined: 06 Dec 2002
Posts: 317
Location: South-West Germany

PostPosted: Wed Aug 23, 2006 12:43 pm    Post subject: Reply with quote

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
View user's profile Send private message
xorinox
n00b
n00b


Joined: 12 Feb 2006
Posts: 24

PostPosted: Sat Sep 09, 2006 2:35 pm    Post subject: I had the same problem Reply with quote

when I try to upgrade to orbit 2.1.4 I had the same error message. all possible lib_fix... tries did not help.

actually I solved the problem doing:

emrrge -C dev-libs/libIDL
emerge dev-libs/libIDL

I have found this possible solution in an other thread here:
http://forums.gentoo.org/viewtopic-t-318581-highlight-gccconfig+error+locate+i386pclinuxgnugcc.html

cheers xorinox
Back to top
View user's profile Send private message
mamac
l33t
l33t


Joined: 29 Feb 2004
Posts: 832

PostPosted: Sat Dec 23, 2006 5:08 pm    Post subject: Reply with quote

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
View user's profile Send private message
Theron NightStar
n00b
n00b


Joined: 21 Jan 2007
Posts: 7

PostPosted: Wed Jan 31, 2007 4:44 pm    Post subject: Reply with quote

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
View user's profile Send private message
smiffy
Apprentice
Apprentice


Joined: 28 Jun 2006
Posts: 259
Location: SA.AU.AP.EARTH

PostPosted: Sun May 06, 2007 11:19 pm    Post subject: Reply with quote

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
View user's profile Send private message
Raqua
n00b
n00b


Joined: 09 May 2007
Posts: 3

PostPosted: Wed May 09, 2007 3:00 pm    Post subject: Reply with quote

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
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Portage & Programming All times are GMT
Goto page Previous  1, 2
Page 2 of 2

 
Jump to:  
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