Chinaunix

标题: 求救:2.6.22内核在rhel5中编译成功 自带2.6.18内核却不能编译 [打印本页]

作者: jinwei672    时间: 2007-10-01 00:17
标题: 求救:2.6.22内核在rhel5中编译成功 自带2.6.18内核却不能编译
国庆节快乐!!!!

kernel compiler请教:      编译新下载的内核是可以成功。但是在rhel5编译在使用的kernel中编译却报错!!


问题是这样的:

我在kernel.org上download了最新的内核版本(2.6.22.9)的内核。且在本机已经通过编译成功。(只测试了内核加载ntfs分区,结果加载后直接mount就可以。)

但是在rhel5 server的 /usr/src/kernels/2.6.18-8.el5-i686/ (rhel5默认的kernel路径)  本目录中执行 make时

            CHK     include/linux/version.h
                              CHK     include/linux/utsrelease.h
                        make[1]: *** No rule to make target `init/main.o', needed by `init/built-in.o'.  Stop.
                        make: *** [init] Error 2


但是用   /usr/src/linux.2.6.22.9/  下却能顺利通过。  不明白其中原理。如果在实际环境中,需要编译现有内核将怎样解决呢?





编译 2.6.22.9内核的步骤。


1            去 kernel.org download 2.6.22.9.tar.gz  包

2            tar -zxvf kernel.2.6.22.9.tar.gz -C /usr/src

3            需要安装的包

yum install gcc*

yum install ncurses-devel.i386 5.5-24.20060715

需要安装gcc 及 ncurses  不然编译会意外停止。不知道为什么 。反正  装了这堆包后 再没报错。

4              make mrproper    确保源码没有不正确的.0文件,将原程序恢复到初始下载状态               

make   menuconfig    配置内核  

make                大概是开始编译吧

make modules_install   将编译后的模块软件到系统标准位置

make install    从Makefile中读取指令,安装到指定位置。

5              整个编译过程需耗时 大约35-40分钟。
作者: authenticamd    时间: 2007-10-13 07:16
Usually the kernel is rebuild by "rpmbuild", not make.




欢迎光临 Chinaunix (http://bbs.chinaunix.net/) Powered by Discuz! X3.2