错误一:

LD .tmp_vmlinux1
init/built-in.o: In function `run_init_process':
/home/ox/tq2440/opt/EmbedSky/linux-2.6.30.4/init/main.c:794: undefined reference to `__gnu_mcount_nc'
init/built-in.o: In function `init_post':
/home/ox/tq2440/opt/EmbedSky/linux-2.6.30.4/init/main.c:804: undefined reference to `__gnu_mcount_nc'
init/built-in.o: In function `do_one_initcall':
/home/ox/tq2440/opt/EmbedSky/linux-2.6.30.4/init/main.c:706: undefined reference to `__gnu_mcount_nc'
init/built-in.o: In function `name_to_dev_t':
/home/ox/tq2440/opt/EmbedSky/linux-2.6.30.4/init/do_mounts.c:78: undefined reference to `__gnu_mcount_nc'
init/built-in.o: In function `rest_init':
/home/ox/tq2440/opt/EmbedSky/linux-2.6.30.4/init/main.c:453: undefined reference to `__gnu_mcount_nc'
init/built-in.o:/home/ox/tq2440/opt/EmbedSky/linux-2.6.30.4/init/calibrate.c:123: more undefined references to `__gnu_mcount_nc' follow
Makefile:809: recipe for target '.tmp_vmlinux1' failed
make: *** [.tmp_vmlinux1] Error 1

  1.解决参考:http://blog.csdn.net/u010445505/article/details/39299855

  2.下载得到文件__gnu_mcount_nc_patch.patch.gz后,使用命令:gzip  -dc  __gnu_mcount_nc_patch.patch.gz | patch -p1,再次编译,搞定

错误二:

Can't use 'defined(@array)' (Maybe you should just omit the defined()?) at kernel/timeconst.pl line 373.

  1.问题分析:defined不能用

  2.问题解决:将kernel/timeconst.pl第373行的defined去掉,即改为: