I just tried (re)emerging sys-libs/libstdc++-v3-3.3.6, but it fails. This is clearly the same bug as bug 130010, except that the package is sys-libs/libstdc++-v3-3.3.6 instead of sys-devel/gcc versions 3.3 and 3.4. This is no great surprise as libstdc++-v3 is compiled from the gcc source package. The failure happens at this point in the ebuild: ---------------------------------------------------------------------- /bin/sh ${srcdir}/mkfixinc.sh i686-pc-linux-gnu i686-pc-linux-gnu) constructing ../fixinc.sh for i686-pc-linux-gnu to run on i686-pc-linux-gnu make TARGETS=oneprocess SHELL="/bin/tcsh" CC="gcc" CFLAGS=" -march=pentium4 -O2 -pipe -ggdb -DIN_GCC -W -Wall -Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes -Wtraditional -pedantic -Wno-long-long -DHAVE_CONFIG_H -DGENERATOR_FILE" LDFLAGS="" LIBERTY="/extra/var/tmp/portage/libstdc++-v3-3.3.6/work/build/gcc/../libiberty/libiberty.a" install-bin make[2]: Entering directory `/extra/var/tmp/portage/libstdc++-v3-3.3.6/work/build/gcc/fixinc' /bin/tcsh /extra/var/tmp/portage/libstdc++-v3-3.3.6/work/gcc-3.3.6/gcc/fixinc/genfixes machname.h SHELL=/bin/sh: Command not found. export: Command not found. if: Expression Syntax. ---------------------------------------------------------------------- This is *exactly* the same place the error happens in bug 130010 comment 8. My guess is the same fix applies (namely, patch/88_all_gcc-3.4-make-SHELL.patch from gcc-3.4.6-patches-1.2.tar.bz2). Although bugzilla exhorts me that "('emerge --info' goes here)", I will put this info in a separate attachment because on all recent occasions it has refused my bug report with the error "comment too long".
Created attachment 88495 [details] Output of "emerge --info" on my system.
bash bigots ;-)
A simple workaround for tcsh/csh users is to simply prepend 'env SHELL=/bin/sh' to the emerge command line. ex: # env SHELL=/bin/sh emerge sys-libs/libstdc++-v3
Seems that I just hit this today for the first time on two fairly updated boxes, during "emerge -e world": make[2]: Entering directory `/var/tmp/portage/libstdc++-v3-3.3.4/work/build/gcc/fixinc' /bin/tcsh /var/tmp/portage/libstdc++-v3-3.3.4/work/gcc-3.3.4/gcc/fixinc/genfixes machname.h SHELL=/bin/sh: Command not found. export: Command not found. if: Expression Syntax. make[2]: *** [machname.h] Error 1 make[2]: Leaving directory `/var/tmp/portage/libstdc++-v3-3.3.4/work/build/gcc/fixinc' make[1]: *** [fixinc.sh] Error 2 make[1]: *** Waiting for unfinished jobs.... make[1]: Leaving directory `/var/tmp/portage/libstdc++-v3-3.3.4/work/build/gcc' make: *** [all-gcc] Error 2 Does anyone want to see the "emerge --info" output?
Just encountered the same problem in the middle of a rather frustrating upgrade experience to 2006.1, but Kevin's workaround worked like charm --thanks Kevin for taking the time to suggest it :)
Same happens with libffi
I'm having the exact same issues but Kevin's fixed worked like a charm. Thanks Kevin!
when i saw this happen i tried 'su -' (my regular root uid still has a bash login shell, i just never use it) then emerge --resume and whoops it emerged. easy workaround, but unnecessary bug that shouldn't reappear in future versions...
can we get this "fix" into the ebuild by chance?
*** Bug 203840 has been marked as a duplicate of this bug. ***
should be fixed now by using the gcc-3.3.6 patchset
(In reply to comment #11) > should be fixed now by using the gcc-3.3.6 patchset > actually, this happened to me after syncing today on bash