Chinaunix首页 | 论坛 | 博客
  • 博客访问: 823008
  • 博文数量: 132
  • 博客积分: 10
  • 博客等级: 民兵
  • 技术积分: 2276
  • 用 户 组: 普通用户
  • 注册时间: 2010-12-03 10:50
个人简介

while(!dead) learning++;

文章分类

全部博文(132)

文章存档

2019年(3)

2018年(11)

2017年(12)

2016年(8)

2015年(8)

2014年(4)

2013年(86)

分类: LINUX

2013-02-25 15:39:59

1、下载相关内核源码:

     

2、将其拷贝到/usr/src/目录下:

    cp   /usr/src/

3、解压

    tar  zxvf 

4、进入linux-3.8目录

    cd  linux-3.8

5、准备编译

1)、#make mrproper

    该命令确保源代码目录下没有不正确的.o文件以及文件的互相依赖

2)、配置内核:

    #make config(基于文本的最为传统的配置界面,不推荐使用)

    #make menuconfig(基于文本选单的配置界面,字符终端下推荐使用)

    #make xconfig(基于图形窗口模式的配置界面,Xwindow下推荐使用)

    #make oldconfig(如果只想在原来内核配置的基础上修改一些小地方,会省去不少麻烦)
3)、#make dep

    该命令实际上读取配置过程生成的配置文件,来创建对应于配置的依赖关系树,从而决定哪些需要编译而那些不需要;

4)、#make clean

    完成删除前面步骤留下的文件,以避免出现一些错误;

5)、#make zImage/bzImage

    实现完全编译内核,二者生成的内核都是使用gzip压缩的,只要使用一个就够了,它们的区别在于使用make bzImage可以生成大一点的内核,

    比如在编译2.4.0版本的内核时如果使用make zImage命令,那么就会出现system too big的错误提示。

6)、#make modules

    该命令将之前在配置中选中的项目以模块的形式编译进内核。

7)、#make modules_install

    该命令把模块拷贝到需要的目录中。

8)、#depmod -a

    严格说来,该命令命令和编译过程并没有关系,它是生成模块间的依赖关系,这样你启动新内核之后,使用modprobe命令加载模块时就能正确地定位模块。

9)、使用新内核

    #mv  /boot/System.map  /boot/System.map.old; mv /boot/vmlinuz  /boot/vmlinuz.old

    #cp /usr/src/linux/System.map /boot/

    #cp /usr/src/linux/zImage /boot/vmlinuz

6、编译完成,重启,选中新编译的内核启动。

    #shutdown -r now

 

阅读(2158) | 评论(0) | 转发(2) |
给主人留下些什么吧!~~