码迷,mamicode.com
首页 > 系统相关 > 详细

Linux内核编译步骤

时间:2015-01-22 12:34:53      阅读:218      评论:0      收藏:0      [点我收藏+]

标签:

Linux内核编译步骤

      编译之前,一定要查看,内核源码中,Documentation/Changes文件,查看内核编译时,需要的运行环境,如果不适合编译和有可能失败。

    由于2.4和2.6内核的编译方法不是完全一样,所以我们分开两种情况讨论

      编译2.4内核:                                                         编译2.6内核

第一步:make mrproper -清理内核源代码树(清理垃圾信息)             make mrproper

第二步:make menuconfig   --配置内核以及内核模块                     make menuconfig

      (相关的命令还有make config、make oldconfig、make xconfig)

                       (交互问答式)(通过旧内核生成)(图形界面下编译)

      我们在这里推荐使用make menuconfig 这种方法操作最方便最直接。

      在进入内核配置菜单之后,原则上,自己有把握的可以更改,没有把握的切记不要乱改,否则会导致编译失败。

      更改的时候,*,表示编译进入内核————随系统启动而启动

                     M,表示编译进入模块————不随系统启动而启动,在需要的时候调用(一些不重要的外部驱动程序就可以作为内核模块编译,这样内核不会过大,也不会影响启动速度)

                     空,表示不编译进入内核也不编译进入模块————放弃这个功能,如果系统不支持这类功能,可以放弃

    最后退出的时候,提示保存,这里会将刚才的配置保存为一个名称为.config的配置文件,不管我们使用make menuconfig还是make oldconfig、make xconfig、make config,最终都为了生成这个.config文件,以后所有的操作,就会根据这个文件中的内容进行,这个文件,存储的就是我们刚才所做的改动,可以less .config查看一下。

第三步:make dep --生成依赖性关系

第四步:make bzImage --生成新内核                               make (2.6内核中将左边三个步骤简化为make)

     第五步:make modules --编译内核模块

  这三个步骤执行的时间比较长,所以,慢慢等吧!刚才这一步是执行时间最长的一步。

     第六步:make modules_install --安装内核模块

     第七步:make install --安装内核                 

     (所有的编译步骤最好在字符界面下进行,否则在图形界面下速度会比较慢)

     另外上面所提到的所有步骤,任何一步完成之后都要检查有没有出错,就是有没有显示error的字样,如果显示任何一步出错都要退回到make mrproper重来。

没有报错,似乎情况还不错。

但是不要高兴太早,还要进行进一步测试:

1. vi /etc/grub.conf -->查看是否有新的内核启动项生成。并修改default指向(0代表第一个,1代表第二个,以此类推)。

2. ls /boot -->查看是否有新的内核文件vmlinuz生成。

现在差不多行了,但是还要重启,看是否可以新的内核启动系统。我现在已经成功进入系统了,那么执行uname -a 检查一下我们现在是否使用新内核:

显示使用的内核是新内核,证明内核编译成功!

      大功告成!

 

Linux内核编译步骤

标签:

原文地址:http://www.cnblogs.com/zgh2015/p/4241294.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!