咔叽游戏

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 502|回复: 0

[Linux] Ubuntu12.04建立内核树实现过程详解

[复制链接]
  • TA的每日心情
    无聊
    2019-5-27 08:20
  • 签到天数: 4 天

    [LV.2]圆转纯熟

    发表于 2020-9-15 19:59:44 | 显示全部楼层 |阅读模式
    先查看自己使用的内核版本
    lin@lin-virtual-machine:~$ uname -r
    3.2.0-23-generic

    如果安装系统时,自动安装了源码。在 /usr/src 目录下有对应的使用的版本目录。
    lin@lin-virtual-machine:~$ cd /usr/src
    lin@lin-virtual-machine:/usr/src$ ls
    linux-headers-3.2.0-23 linux-headers-3.2.0-23-generic

    查看一下可一下载的源码包
    lin@lin-virtual-machine:/usr/src$ apt-cache search linux-source
    linux-source - Linux kernel source with Ubuntu patches
    linux-source-3.2.0 - Linux kernel source for version 3.2.0 with Ubuntu patches

    我这里选择所以“linux-source-3.2.0 - Linux kernel source for version 3.2.0 with Ubuntu patches”直接 install
    lin@lin-virtual-machine:/usr/src$ sudo apt-get install linux-source-3.2.0

    下载完成后,在/usr/src下,文件名为:linux-source-3.2.0.tar.bz2,是一个压缩包,解压缩既可以得到整个内核的源代码。
    使用pwd来查看当前路径
    ls来查看文件夹中有哪些文件
    lin@lin-virtual-machine:/usr/src$ pwd
    /usr/src
    lin@lin-virtual-machine:/usr/src$ ls
    linux-headers-3.2.0-23 linux-source-3.2.0
    linux-headers-3.2.0-23-generic linux-source-3.2.0.tar.bz2

    解压缩
    lin@lin-virtual-machine:/usr/src#sudo tar jxvf linux-source-3.2.0.tar.bz2

    进入该目录(cd linux-source-3.2.0)
    lin@lin-virtual-machine:/usr/src$ cd linux-source-3.2.0/
    lin@lin-virtual-machine:/usr/src/linux-source-3.2.0$ pwd
    /usr/src/linux-source-3.2.0

    开始配置内核 选择最快的原版的配置(默认)方式
    lin@lin-virtual-machine:/usr/src/linux-source-3.2.0$ sudo make oldconfig

    make需要等一个小时多。。。
    lin@lin-virtual-machine:/usr/src/linux-source-3.2.0$ sudo make

    数小时后
    1. ...System is 4826 kB
    2. CRC d5a51584
    3. Kernel: arch/x86/boot/bzImage is ready (#1)
    4. Building modules, stage 2.
    5. MODPOST 3304 modules
    6. ERROR: "__modver_version_show" [drivers/staging/rts5139/rts5139.ko] undefined!
    7. WARNING: modpost: Found 4 section mismatch(es).
    8. To see full details build your kernel with:
    9. 'make CONFIG_DEBUG_SECTION_MISMATCH=y'
    10. make[1]: *** [__modpost] Error 1
    11. make: *** [modules] Error 2
    复制代码
    解决方法:来自http://ubuntuforums.org/showthread.php?t=1931029
    lin@lin-virtual-machine:/usr/src/linux-source-3.2.0$ sudo gedit .config

    估计是RTS5139驱动的问题.反正没有使用这个驱动,不要加入编译, 编辑.config, 将
    CONFIG_RTS5139=m
    修改成如下的形式:
    CONFIG_RTS5139=n
    继续make
    编译压缩形式的内核
    make bzImage
    编译模块:
    make modules
    安装模块:
    make modules_install
    执行结束之后,会在/lib/modules下生成新的目录
    lin@lin-virtual-machine:/lib/modules$ ls
    3.2.0-23-generic 3.2.79

    成功后重启。
    以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持咔叽论坛。

    原文地址:https://www.jb51.net/article/195432.htm

    QQ|免责声明|小黑屋|手机版|Archiver|咔叽游戏

    GMT+8, 2024-3-28 17:14

    Powered by Discuz! X3.4

    © 2001-2023 Discuz! Team.

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