I installed gcc version 3.4.4 yesterday as part of an emerge world. The emerge failed near the end and at that point gcc no longer worked. So I emerged the preious verions 3.4.3-r1 but it still is not working right. I can run emerges but I can not run make from the command line when compiling c code (it works for c++). I get the following error message when I try to make c source code: cc -g -O4 -fomit-frame-pointer -Wall -c cmshull.c make: execvp: cc: Permission denied make: *** [cmshull.o] Error 127 I shoud add that if I run gcc from the command line (gcc mysource.c) it works. When I emerge gcc or run gcc-config I get this error: Your gcc has a bug with GCC_SPECS. * Please re-emerge gcc. * http://bugs.gentoo.org/show_bug.cgi?id=68395 When I look at the above bug report is says it shold not happen with gcc versions later than 3.4.2-r3. This is aparently not correct. How to I fix this? Re-emerging gcc does not work. I am working on some software and this is really getting in my way.
My emerge info Portage 2.0.51.22-r2 (default-linux/amd64/2005.0, gcc-3.4.3, glibc-2.3.5-r1, 2.6.12-gentoo-r6 x86_64) ================================================================= System uname: 2.6.12-gentoo-r6 x86_64 AMD Athlon(tm) 64 Processor 3500+ Gentoo Base System version 1.6.13 distcc 2.18.3 x86_64-pc-linux-gnu (protocols 1 and 2) (default port 3632) [disabled] ccache version 2.3 [disabled] dev-lang/python: 2.3.5 sys-apps/sandbox: 1.2.12 sys-devel/autoconf: 2.13, 2.59-r6 sys-devel/automake: 1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.5 sys-devel/binutils: 2.15.92.0.2-r10 sys-devel/libtool: 1.5.18-r1 virtual/os-headers: 2.6.11-r2 ACCEPT_KEYWORDS="amd64" AUTOCLEAN="yes" CBUILD="x86_64-pc-linux-gnu" CFLAGS="-march=k8 -O2 -pipe" CHOST="x86_64-pc-linux-gnu" CONFIG_PROTECT="/etc /usr/kde/2/share/config /usr/kde/3.4/env /usr/kde/3.4/share/config /usr/kde/3.4/shutdown /usr/kde/3/share/config /usr/lib/X11/xkb /usr/share/config /usr/share/texmf/dvipdfm/config/ /usr/share/texmf/dvips/config/ /usr/share/texmf/tex/generic/config/ /usr/share/texmf/tex/platex/config/ /usr/share/texmf/xdvi/ /var/qmail/control" CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/env.d" CXXFLAGS="-march=k8 -O2 -pipe" DISTDIR="/usr/portage/distfiles" FEATURES="autoconfig distlocks sandbox sfperms strict" GENTOO_MIRRORS="http://gentoo.llarian.net/ http://gentoo.osuosl.org/ http://gentoo.ccccom.com http://gentoo.mirrors.tds.net/gentoo http://mirror.datapipe.net/gentoo" PKGDIR="/usr/portage/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="/usr/local/portage" SYNC="rsync://rsync.gentoo.org/gentoo-portage" USE="amd64 X alsa apache2 avi berkdb bitmap-fonts cdr crypt cups curl doc dvr eds encode esd fam flac foomaticdb fortran gd gdbm gif gimpprint gnome gpm gstreamer gtk gtk2 imagemagick imlib ipv6 jack java jpeg junit kde lcms libwww lzw lzw-tiff mad matrox motif mp3 mpeg nas ncurses nls nptl ogg opengl pam pdflib perl pic png ppds python qt quicktime readline scanner sdl spell ssl tcltk tcpd tetex threads tiff truetype-fonts type1-fonts usb userlocales vorbis wxwindows xine xinerama xml xml2 xpm xv xvid zlib userland_GNU kernel_linux elibc_glibc" Unset: ASFLAGS, CTARGET, LANG, LC_ALL, LDFLAGS, LINGUAS, MAKEOPTS
it's a false positive which happens because your compiler is screwed up what are the permissions of your /usr/bin/cc /usr/bin/gcc /usr/bin/c++ files and such ?
office src # ls -l /usr/bin/gcc -rw-r--r-- 1 root root 0 Aug 19 17:53 /usr/bin/gcc office src # ls -l /usr/bin/cc -rw-r--r-- 1 root root 0 Aug 19 17:53 /usr/bin/cc office src # ls -l /usr/bin/c++ -rw-r--r-- 1 root root 0 Aug 19 17:53 /usr/bin/c++
what does `ls -l /usr/lib/misc/gcc-config` show
# ls -l /usr/lib/misc/gcc-config ls: /usr/lib/misc/gcc-config: No such file or directory
remove /usr/bin/gcc and /usr/bin/cc and then try to run `emerge gcc-config`
When I ran emerge gcc-config it complained about the GCC_SPECS bug. So I ran a gcc-config -f x86_64-pc-linux-gnu-3.4.3 and that appeared to work. I have tested it and it now is working. So it appears that removing /usr/bin/gcc and /usr/bin/cc, emerging gcc-config and then running gcc-config fixed the problem. Good job and thanks for your help.