LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 1948|回复: 3

请问FC5下如何安装内核源代码?

[复制链接]
发表于 2006-5-6 00:36:39 | 显示全部楼层 |阅读模式
在网上找了半天,找到如下一篇帖子,但涉及到编译内核,暂时还没有敢动,请问下面方法是否可行(网上down的)?有没有更简单一点的方法?
我的系统情况:
用DVD安装盘直接安装的,安装时自己没有做过任何配置,已经从源码盘中找到了kernel-2.6.15-1.2054_FC5.src.rpm。

帖子内容如下:


1.确定安装了GCC与RPM相关的包。
2.安装相应的内核源代码,因为FC5本身没有提供相应的源码包在安装盘上,所以要在官方网站上下载,网址如下。
http://download.fedora.redhat.co ... -1.2054_FC5.src.rpm

也可以从www.kernel.org上下载到相应 ... 这个,怕Fedora 5发行版的和这个有点差别)

3.编译内核源码:
[root@sunshine srpms]#rpm –Uvh kernel-2.6.15-1.2054_FC5.src.rpm
[root@sunshine srpms]#cd /usr/src/redhat/SPECS
[root@sunshine SPECS]#rpmbuild  -bp --target $(uname -m) kernel-2.6.spec
[root@sunshine SPECS]# ls /usr/src/redhat/BUILD/kernel-2.6.15/
Config.mk  linux-2.6.15.i686  vanilla  xen  xen-vanilla (有可能是i586我的是i686)
[root@sunshine SPECS]# cd /usr/src
[root@sunshine src]#mkdir kernels (默认的安装是没有kernels这个文件夹)

[root@sunshine src]# ls -l /lib/modules/2.6.15-1.2054_FC5/
总计 1152
lrwxrwxrwx  1 root root     47 04-29 12:08 build -> ../../../usr/src/kernels/2.6.1 5-1.2054_FC5-i686
drwxr-xr-x  2 root root   4096 03-15 05:02 extra
drwxr-xr-x 10 root root   4096 04-29 12:08 kernel
-rw-r--r--  1 root root 239062 04-29 12:09 modules.alias
-rw-r--r--  1 root root     69 04-29 12:09 modules.ccwmap
-rw-r--r--  1 root root 238199 04-29 12:09 modules.dep
-rw-r--r--  1 root root    813 04-29 12:09 modules.ieee1394map
-rw-r--r--  1 root root    206 04-29 12:09 modules.inputmap
-rw-r--r--  1 root root  11158 04-29 12:09 modules.isapnpmap
-rw-r--r--  1 root root 182372 04-29 12:09 modules.pcimap
-rw-r--r--  1 root root    799 04-29 12:09 modules.seriomap
-rw-r--r--  1 root root 104167 04-29 12:09 modules.symbols
-rw-r--r--  1 root root 279653 04-29 12:09 modules.usbmap
lrwxrwxrwx  1 root root      5 04-29 12:08 source -> build
drwxr-xr-x  2 root root   4096 03-15 05:02 updates

从这里可以看出需要链接文件build所指向的文件是无效的,因为那个文件不存在

[root@sunshine src]# cd kernels/

[root@sunshine kernels]# ln -s ../redhat/BUILD/kernel-2.6.15/linux-2.6.15.i686/ 2.6.15-1.2054_FC5-i686
[root@sunshine kernels]# ls
2.6.15-1.2054_FC5-i686
[root@sunshine kernels]# cd 2.6.15-1.2054_FC5-i686/

[root@sunshine 2.6.15-1.2054_FC5-i686]# cp configs/kernel-2.6.15-i686.config .config
cp:是否覆盖“.config”? y


修正Makefile
------------------------------------
[root@sunshine 2.6.15-1.2054_FC5-i686]#uname –r (得到2.6.15-1.2054_FC5)
2.6.15-1.2054_FC5
那么就要将Makefile中的
EXTRAVERSION = -prep
换成
EXTRAVERSION = -1.2054_FC5

-------------------------------------
继续编译:
#make mrproper
#make oldconfig
#make  (比较耗时,我用了一个多小时)
#make modules_install
到此我们要用的内核编译完成。
 楼主| 发表于 2006-5-6 00:38:43 | 显示全部楼层
还有一个问题,如果这个方法可行,那么下面这句话中如何选择时i586还是i686?
Config.mk linux-2.6.15.i686 vanilla xen xen-vanilla (有可能是i586我的是i686)

多谢了.....
回复 支持 反对

使用道具 举报

发表于 2006-5-10 10:25:38 | 显示全部楼层
可以直接从http://www.kernel.org上下载 ... 都来自这里。
直接解压在/usr/src/kernel下,然后就可以编译了。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2006-5-11 09:54:07 | 显示全部楼层
楼上兄弟,我是要安装内核源代码,不是单单编译内核啊~
还有你的链接好像没发对....
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表