免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1504 | 回复: 0
打印 上一主题 下一主题

编译2.6.18的过程 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2006-10-07 12:53 |只看该作者 |倒序浏览
2.6.18内核编译过程

整整两天时间,就忙活着编译内核了。网上的信息太繁杂,基本上大同小异。但是不一定哪篇文章就有与众不同之处,或许正是所需要的。
我的系统是DEBIAN3.1,LINUX-2.6.8内核,编译2.6.18内核。

1.准备
安装最新版本的module-init-tools、modutils-2.4.21-23.src.rpm。

2.源代码取得
    我装的系统不附带源码,/usr/src目录是空的。2.6.18源码存在WINDOWS的d盘,我把d盘挂过来,linux-2.6.18.tar.gz复制到/usr/src下。

3.解压
    #tar xvfz linux-2.6.18.tar.gz
    生成linux-2.6.18代码目录。

4.进入代码目录
    #cd linux-2.6.18

5.清理代码树
    #make mrproper
该命令确保源代码目录下没有不正确的.o文件以及文件的互相依赖。确保源代码是干净的。

6.配置新内核
以下命令都是配置内核的,选一个
#make config(基于文本的最为传统的配置界面,不推荐使用)
#make xconfig(基于图形窗口模式的配置界面,Xwindow下推荐使用)
#make oldconfig(默认为旧内核相同的配置,只有新东西提示你自己配置)
#make allyesconfig(所有的项一次性选成yes)
我用的“make xconfig”,方便,而且很清楚究竟是如何配置的。不过要预先装QT开发库,否则不能用。
对应项前的小方格里画“√”即该项编译进内核,画“• ”即编译成模块,空着是不选择。保证文件系统编译进内核,其他根据情况选。

7.编译
    #make   
相当于#make bzImage; #make modules

8.安装
    #make modules_install
实际做了下面动作:
#cp /usr/src/linux/System.map /boot/System.map-2.4.18
#cp /usr/src/linux/arch/i386/bzImage /boot/vmlinuz-2.4.18                 
#cd /boot
#rm -f System.map vmlinuz
#ln -s vmlinuz-2.4.18 vmlinuz
#ln -s System.map-2.4.18 System.map
bzImage是压缩的内核映像
vmlinux是未压缩的内核,vmlinuz是vmlinux的压缩文件。
initrd一般被用来临时的引导硬件到实际内核vmlinuz能够接管并继续引导的状态。
System.map是一个特定内核的内核符号表。它是你当前运行的内核的System.map的链接。

9.生成initrd.img
    #make -o /boot/initrd-2.6.18.img 2.6.18
说2.6.18内核编译自动生成,但不行。开始没这一步,重启无法进新内核。

10.生成模块间依赖关系
     #depmod –a

11.进入/boot/grub,修改menu.lst
#cd /boot/grub
#vi menu.lst   或在X-WINDOWS下直接改(推荐,vi麻烦)
     添加:
       title                 Debian Linux kernel 2.6.18
         root                 (hd0,6) //根分区和你的sda*对应
         kernel               /boot/vmlinuz-2.6.18 root=/dev/sda7 ro
         initrd                /boot/initrd-2.6.18.img
         savedefault
         boot

12.重启进入新内核
     #reboot
开始,我按照资料上的做,但不成功。有些情况与资料上的不符,如initrd.img不能自动生成,grub要手动设置等。反正我是这样编译成功了。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP