近日拜读了聂飞的大作<FC5下编译2.4内核>,甚有快感。
以下结合原文和实际编译过程整理成一篇记录
1.准备2.4.20的源代码
$tar jxf linux-2.4.20.tar.bz2
$mv linux-2.4.20 linux
$cd linux
$make mrproper
$make config
$make dep
上面这些步骤都能顺利
通过
$make bzImage
一会就出现了如下的 错误
/usr/linux-2.4.20/include/linux/smp.h:29: error: conflicting types for 'smp_send_reschedule'
/usr/linux-2.4.20/include/asm/smp.h:42: error: previous declaration of 'smp_send_reschedule' was here In file included from /usr/linux-2.4.20/include/linux/unistd.h:9,from init/main.c:17:
/usr/linux-2.4.20/include/asm/unistd.h:375: warning: conflicting types for built-in function '_exit'
这是因为FC5下的GCC版本太新(gcc4.1)
在一个国外网站上也发现了类似的 问题,他们的建议是使用 gc