• Linux内核编译


    一、Debian下的内核编译过程

    下面是自己写的Shell脚本,还没有测试,目前按照要求编写的,有问题的地方请大家指出,待我实验之后在确定脚本的可行性!!

     1 mkdir Kernel_Code
     2 wget https://codeload.github.com/torvalds/linux/tar.gz/v4.4
     3 tar -xzvf v4.4
     4 local_path=$(pwd)
     5 Kernel_Folder=${local_path}"/linux-4.4"
     6 cd $Kernel_Folder
     7 cp /boot/config-4.4.0-57-generic ./
     8 mv config-4.4.0-57-generic .config
     9 sudo apt-get install kernel-package libncurses5-dev
    10 make clean
    11 make menuconfig
    12 make -kpkg clean
    13 make -kpkg --initrd kernel-headers kernel_image
    14 cd ../
    15 sudo dpkg -i *.deb
    16 sudo reboot

    二、mini2440开发板的内核镜像编译过程 

    1、下载对应的linux内核的版本(我下载的是v4.4的版本):

    下载地址:https://github.com/mm1994uestc/linux/releases/tag/v4.4

    2、解压配置对应的文件:

    tar -xzvf linux-4.4.tar.gz
    cd linux-4.4/
    cp arch/arm/configs/mini2440_defconfig .config
    make menuconfig  

       从linux-2.6.31开始Mini2440被正式加入Linux官方内核,因此arch/arm/configs目录中包含了Mini2440的默认配置文件mini2440_defconfigmake

       menuconfig是必须的,就算并没有在菜单界面中做任何配置,但是调用它可使上述配置生效(退出菜单配置界面时提示是否保存,要确认)

       linux-2.6.34.7/Documentation/arm/README中有关于交叉编译的说明

    3、编译make解压配置之后的Source文件如下所示:

    在当前图中目录进行make(开启8个线程进行编译以加快速度):

    make -j8  

    4、编译的过程以及编译的结果如下:

    编译过程(大概半个小时)

      最后生成了对应的设备驱动等

    编译的结果(生成我们需要的zImage文件)

    ls -al arch/arm/boot/ | grep zImage

    注意目标文件Zimage是保存在arch/arm/boot/文件夹当中的

    至此,我们已经成功的将用于mini2440硬件的内核镜像编译完成了,接下来就可以下载使用了。

    Reference:

    简书参考:https://www.jianshu.com/p/eece4167999d

  • 相关阅读:
    日期类和包装类
    集合——list
    数组
    多态小结
    一些概念性的知识点
    简单的图书管理系统
    一个小总结
    python-web自动化:上传操作
    python-web自动化:日期框操作
    python-web自动化:滚动条
  • 原文地址:https://www.cnblogs.com/uestc-mm/p/6464261.html
Copyright © 2020-2023  润新知