/bin/sh: -c: line 0: syntax error near unexpected token `('

John Gay johngay at eircom.net
Mon Feb 6 04:01:15 PST 2006

I can usually puzzle my way through most errors, but this one stumps me. I'm 
trying to build a 2.6.16-rc2 kernel from within the pure-64 build on my Dual 
Opteron. I run the usual make mrproper, make menuconfig fine, but when I then 
run make, it errors immediately with:
/bin/sh: -c: line 0: syntax error near unexpected token `('
/bin/sh: -c: line 0: `set -e; echo '  CHK     include/linux/version.h'; mkdir 
-p include/linux/;        if [ `echo -n "2.6.16-rc2 .file null .ident GCC:
(GNU)4.0.2 .section .note.GNU-stack,, at progbits" | wc -c ` -gt 64 ]; then echo 
'"2.6.16-rc2 .file null .ident GCC:(GNU)
4.0.2 .section .note.GNU-stack,, at progbits" exceeds 64 characters' >&2; exit 
1; fi; (echo \#define UTS_RELEASE \"2.6.16-rc2 .file null .ident GCC:(GNU)
4.0.2 .section .note.GNU-stack,, at progbits\"; echo \#define LINUX_VERSION_CODE 
`expr 2 \\* 65536 + 6 \\* 256 + 16`; echo '#define KERNEL_VERSION(a,b,c) 
(((a) << 16) + ((b) << 8) + (c))'; ) < /sources/linux-2.6.16-rc2/Makefile > 
include/linux/version.h.tmp; if [ -r include/linux/version.h ] && cmp -s 
include/linux/version.h include/linux/version.h.tmp; then rm -f 
include/linux/version.h.tmp; else echo '  UPD     include/linux/version.h'; 
mv -f include/linux/version.h.tmp include/linux/version.h; fi'
make: *** [include/linux/version.h] Error 2

Seems the first error is some sort of shell-script error, but since the 
Makefile suppresses the directory entrys I don't know where to look?

I've tried various config setting, including make defconfig, for all default 
settings and make allnoconfig for minimal config, as well as make oldconfig 
from my current running 32 bit system updated as best as I know how.

If I can't get a 2.6.16 kernel built to update the udev rules in this first 64 
bit build, I'll have to wait until the CLFS book is updated to this level.


	John Gay

More information about the cross-lfs mailing list