zoukankan      html  css  js  c++  java
  • CentOS5.8下编译安装3.X版本内核

    1.安装依赖包:

    [root@CentOS5 ~]# yum -y install wget make gcc perl ncurses-devel


    2.下载内核版本:

    [root@CentOS5 ~]# wget https://www.kernel.org/pub/linux/kernel/v3.x/linux-3.8.7.tar.gz


    3.移动内核到相应目录并解压:

    [root@CentOS5 ~]# mv linux-3.8.7.tar.gz /usr/src/

    [root@CentOS5 ~]#cd /usr/src

    [root@CentOS5 src]# tar -zxvf linux-3.8.7.tar.gz


    4.切换目录:

    [root@CentOS5 src]# cd linux-3.8.7


    5.清除环境变量:

    [root@CentOS5 linux-3.8.7]# make mrproper


    6.在菜单模式下选择需要编译的内核模块:

    [root@CentOS5 linux-3.8.7]# make menuconfig


    7.确保所有东西均保持最新状态:

    [root@CentOS5 linux-3.8.7]# make clean


    8.编辑.config:

    [root@CentOS5 linux-3.8.7]# vi .config

    添加如下内容:

    CONFIG_SYSFS_DEPRECATED_V2=y

    CONFIG_SYSFS_DEPRECATED=y

    保存退出;


    9.编辑hid-example.c:

    [root@CentOS5 linux-3.8.7]# vi /usr/src/linux-3.8.7/samples/hidraw/hid-example.c

    将13-15行的如下3行移动到33行以后:

         13 #include <linux/types.h>

         14 #include <linux/input.h>

         15 #include <linux/hidraw.h> 


         29 #include <sys/ioctl.h>

         30 #include <sys/types.h>

         31 #include <sys/stat.h>

         32 #include <fcntl.h>

         33 #include <unistd.h>


    10.编辑input.h:

    [root@CentOS5 linux-3.8.7]# vi /usr/include/linux/input.h

    line 647

    #define BUS_PCI                 0x01

    #define BUS_ISAPNP              0x02

    #define BUS_USB                 0x03

    #define BUS_HIL                 0x04

    #define BUS_BLUETOOTH           0x05

    /*以下一行为新增*/

    #define BUS_VIRTUAL             0x06 


    #define BUS_ISA                 0x10

    #define BUS_I8042               0x11

    #define BUS_XTKBD               0x12

    #define BUS_RS232               0x13

    #define BUS_GAMEPORT            0x14

    #define BUS_PARPORT             0x15

    #define BUS_AMIGA               0x16

    #define BUS_ADB                 0x17

    #define BUS_I2C                 0x18

    #define BUS_HOST                0x19

    #define BUS_GSC                 0x1A

    /*以下两行为新增*/

    #define BUS_ATARI               0x1B

    #define BUS_SPI                 0x1C


    11.生成新内核:

    [root@CentOS5 linux-3.8.7]# make bzImage


    12.编译内核模块:

    [root@CentOS5 linux-3.8.7]# make modules


    13.安装模块:

    [root@CentOS5 linux-3.8.7]# make modules_install


    14.安装:

    [root@CentOS5 linux-3.8.7]# make install


    15.重启:

    [root@CentOS5 linux-3.8.7]# reboot

    *****************************************************************

    其他:

    # make localmodconfig         精简内核,只编译lsmod加载的模块,用于精简kernel的配置。

    # make -jn bzImage           n表示用于编译内核主机的CPU核数,比如我的主机CPU是1颗2核,那么n=2,可提高编译速度。

    # make INSTALL_MOD_STRIP=1 modules_install     加上该参数可减小编译后模块的尺寸。

  • 相关阅读:
    vue 同页面不同参数
    vue的data用到this问题
    vue轮播,不是只有左右切换的,还有只切换src的
    vue页面高度填充,不出现滚动条
    WdatePicker做出onchange效果
    总结最近移动端遇到的坑(auto-size + zepto)
    react
    ES6-set && 数组剔重
    [置顶] Jquery easyui+Jsonp+asp.net+翻页 事件版
    扩展Jquery easyui的validator插件
  • 原文地址:https://www.cnblogs.com/myiaas/p/4161371.html
Copyright © 2011-2022 走看看