为什么Make bzImage总有错误?

我每次从新编译内核后,运行make bzImage总是同样的错误,为什么?
make[1]: Entering directory `/usr/src/linux-2.2.16/arch/i386/boot'
rm -f tools/build
rm -f setup bootsect zImage compressed/vmlinux.out
rm -f bsetup bbootsect bzImage compressed/bvmlinux.out
make[2]: Entering directory `/usr/src/linux-2.2.16/arch/i386/boot/compressed'
rm -f vmlinux bvmlinux _tmp_*
make[2]: Leaving directory `/usr/src/linux-2.2.16/arch/i386/boot/compressed'
make[1]: Leaving directory `/usr/src/linux-2.2.16/arch/i386/boot'
rm -f kernel/ksyms.lst include/linux/compile.h
rm -f core `find . -name '*.[oas]' ! \( -regex '.*lxdialog/.*' \
        -o -regex '.*ksymoops/.*' \) -print`
rm -f core `find . -type f -name 'core' -print`
rm -f core `find . -name '.*.flags' -print`
rm -f vmlinux System.map
rm -f .tmp*
rm -f drivers/char/consolemap_deftbl.c drivers/video/promcon_tbl.c
rm -f drivers/char/conmakehash
rm -f drivers/sound/bin2hex drivers/sound/hex2hex
if [ -d modules ]; then \
        rm -f core `find modules/ -type f -print`; \
fi
rm -f submenu*
[root@yzhou linux]# make bzImage
kgcc -D__KERNEL__ -I/usr/src/linux/include -Wall -Wstrict-prototypes -O2 -fomit-frame-pointer -fno-strict-aliasing -pipe -fno-strength-reduce -m386 -DCPU=386  -c -o init/main.o init/main.c
kgcc -D__KERNEL__ -I/usr/src/linux/include -Wall -Wstrict-prototypes -O2 -fomit-frame-pointer -fno-strict-aliasing -pipe -fno-strength-reduce -m386 -DCPU=386 -DUTS_MACHINE='"i386"' -c -o init/version.o init/version.c
make -C  kernel
make[1]: Entering directory `/usr/src/linux-2.2.16/kernel'
make all_targets
make[2]: Entering directory `/usr/src/linux-2.2.16/kernel'
kgcc -D__KERNEL__ -I/usr/src/linux/include -Wall -Wstrict-prototypes -O2 -fomit-frame-pointer -fno-strict-aliasing -pipe -fno-strength-reduce -m386 -DCPU=386   -DEXPORT_SYMTAB -c signal.c
In file included from /usr/src/linux/include/linux/modversions.h:50,
                 from /usr/src/linux/include/linux/module.h:19,
                 from signal.c:10:
/usr/src/linux/include/linux/modules/i386_ksyms.ver:6: warning: `cpu_data' redefined
/usr/src/linux/include/asm/processor.h:96: warning: this is the location of the previous definition
/usr/src/linux/include/linux/modules/i386_ksyms.ver:28: warning: `smp_num_cpus' redefined
/usr/src/linux/include/linux/smp.h:77: warning: this is the location of the previous definition
/usr/src/linux/include/linux/modules/i386_ksyms.ver:118: warning: `smp_call_function' redefined
/usr/src/linux/include/linux/smp.h:83: warning: this is the location of the previous definition
kgcc -D__KERNEL__ -I/usr/src/linux/include -Wall -Wstrict-prototypes -O2 -fomit-frame-pointer -fno-strict-aliasing -pipe -fno-strength-reduce -m386 -DCPU=386   -DEXPORT_SYMTAB -c ksyms.c
In file included from /usr/src/linux/include/linux/modversions.h:50,
                 from /usr/src/linux/include/linux/module.h:19,
                 from ksyms.c:14:
/usr/src/linux/include/linux/modules/i386_ksyms.ver:6: warning: `cpu_data' redefined
/usr/src/linux/include/asm/processor.h:96: warning: this is the location of the previous definition
/usr/src/linux/include/linux/modules/i386_ksyms.ver:28: warning: `smp_num_cpus' redefined
/usr/src/linux/include/linux/smp.h:77: warning: this is the location of the previous definition
/usr/src/linux/include/linux/modules/i386_ksyms.ver:118: warning: `smp_call_function' redefined
/usr/src/linux/include/linux/smp.h:83: warning: this is the location of the previous definition
In file included from /usr/src/linux/include/linux/interrupt.h:51,
                 from ksyms.c:21:
/usr/src/linux/include/asm/hardirq.h:23: warning: `synchronize_irq' redefined
/usr/src/linux/include/linux/modules/i386_ksyms.ver:138: warning: this is the location of the previous definition
In file included from /usr/src/linux/include/linux/interrupt.h:52,
                 from ksyms.c:21:
/usr/src/linux/include/asm/softirq.h:75: warning: `synchronize_bh' redefined
/usr/src/linux/include/linux/modules/i386_ksyms.ver:142: warning: this is the location of the previous definition
/usr/src/linux/include/linux/kernel_stat.h: In function `kstat_irqs':
In file included from ksyms.c:17:
/usr/src/linux/include/linux/kernel_stat.h:47: `smp_num_cpus' undeclared (first use in this function)
/usr/src/linux/include/linux/kernel_stat.h:47: (Each undeclared identifier is reported only once
/usr/src/linux/include/linux/kernel_stat.h:47: for each function it appears in.)
make[2]: *** [ksyms.o] Error 1
make[2]: Leaving directory `/usr/src/linux-2.2.16/kernel'
make[1]: *** [first_rule] Error 2
make[1]: Leaving directory `/usr/src/linux-2.2.16/kernel'
make: *** [_dir_kernel] Error 2