Building Linux 2.6.16-rc1-git4
I cannot get 2.6.16-rc1[-git4] to build, so am seeking advice here.
"make vmlinux" gives me this:
/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-rc1-git4 .file 
null .ident GCC:(GNU)4.0.320060115(prerelease)(Debian4.0.2-7) .section 
.note.GNU-stack,,@progbits" | wc -c ` -gt 64 ]; then echo 
'"2.6.16-rc1-git4 .file null .ident 
GCC:(GNU)4.0.320060115(prerelease)(Debian4.0.2-7) .section 
.note.GNU-stack,,@progbits" exceeds 64 characters' >&2; exit 1; fi; 
(echo \#define UTS_RELEASE \"2.6.16-rc1-git4 .file null .ident 
GCC:(GNU)4.0.320060115(prerelease)(Debian4.0.2-7) .section 
.note.GNU-stack,,@progbits\"; echo \#define LINUX_VERSION_CODE `expr 2 
\\* 65536 + 6 \\* 256 + 16`; echo '#define KERNEL_VERSION(a,b,c) (((a) 
<< 16) + ((b) << 8) + (c))'; ) < /usr/src/linux/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
I managed to get rid of this error by removing the trailing newline 
slash in Makefile on line 902, but then I get this:
  CHK     include/linux/version.h
"2.6.16-rc1-git4 .file null .ident 
GCC:(GNU)4.0.320060115(prerelease)(Debian4.0.2-7) .section 
.note.GNU-stack,,@progbits" exceeds 64 characters
make: *** [include/linux/version.h] Error 1
This error seems to originate in code that handles .kernelrelease file, 
which, I am pretty sure, was not used in 2.6.15 Makefile. From what I 
understand, this file should contain the release number plus 
localversion, but on my system it contains this (in one line):
2.6.16-rc1-git4 .file null .ident 
GCC:(GNU)4.0.320060115(prerelease)(Debian4.0.2-7) .section 
.note.GNU-stack,,@progbits
Does not look right to me. I tried to locate the code that generates the 
weirdness, but failed. Only managed to somewhat narrow it down to "make 
kernelrelease":
/bin/sh: -c: line 0: syntax error near unexpected token `('
/bin/sh: -c: line 0: `echo 2.6.16-rc1-git4 .file null .ident 
GCC:(GNU)4.0.320060115(prerelease)(Debian4.0.2-7) .section 
.note.GNU-stack,,@progbits'
make: *** [kernelrelease] Error 2
The funny thing is that I can start the build by not reading the 
.kernelrelease on line 347. The .kernelrelease still gets filled with 
the same content, but no errors occur. I did not wait for it to finish, 
because getting it to work is not the fun part. The fun part is figuring 
out why it does not work.
This is my soft:
Gnu C                  4.0.3
Gnu make               3.81beta4
binutils               2.16.91
util-linux             2.12r
mount                  2.12r
module-init-tools      3.2.2
e2fsprogs              1.39-WIP
Linux C Library        2.3.5
Dynamic linker (ldd)   2.3.5
Procps                 3.2.6
Net-tools              1.60
Kbd                    1.12
Sh-utils               5.93
udev                   081
I tried downgrading make to 3.80-9, because I have heard of breakage 
with recent versions, but it only resulted in slightly different error 
messages.
I am not really experienced with Makefiles, so I do not really know how 
to debug them properly. Any help would be appreciated.
Reply to: