迅为4412开发板实验Menuconfig_Kconfig(上)
发布时间:2020-12-22 10:37
发布者:就是塔塔
3.1 本章导读 Linux 驱动工程师一定要掌握 Linux 内核的编译方法,也就是将 Linux 内核源码,编译成针对特定硬件的二进制镜像。 在前面入门视频“01-烧写、编译以及基础知识视频”→“实验 10-搭建编译环境uboot_linux_Android”中,简单的介绍过如何将 Linux 源码编译生成二进制 zImage在本章中,将更加详细的介绍这部分内容,然后介绍 Kconfig 配置文件,Kconfig 文件是和编译的 Makemenuconfig 工具配合使用的。最后还需要掌握“.config”文件的作用。 3.1.1 工具 3.1.1.1 硬件工具 1)PC 机 3.1.1.2 软件工具 1)虚拟机 Vmware 2)Ubuntu12.04.2 3)Ubuntu 系统下解压生成的 Linux 源码 3.1.2 预备课程 入门视频“01-烧写、编译以及基础知识视频”→“实验 10-搭建编译环境uboot_linux_Android”或者使用手册“五 Android 开发环境搭建以及编译” 3.1.3 视频资源 本节配套视频为“视频 03_Menuconfig_Kconfig” 3.2 学习目标 本章需要学习以下内容: 掌握 Menuconfig 的用法 理解 Kconfig 文件并掌握修改 Kconfig 的方法 理解配置文件“.config” Linux 内核配置裁减 3.3 Linux 内核配置系统 Linux 内核配置系统由三个部分组成。 Makefile 文件:分布在 Linux 内核源码中的 Makefile 文件,定义了 Linux 内核的编译规则。 Kconfig 文件:给用户提供配置选择的功能。 配置工具:这里使用的是 menuconfig,相比其它工具,这个工具使用的比较多,也比较 容易上手,无论哪个机构发布的 Linux 版本应该都是支持 menuconfig 的。 3.4 Menuconfig 的操作 Linux 的裁减配置是通过 menuconfig 工具来实现的,本节介绍如何使用这个工具。 3.4.1 Menuconfig 发展历史简介 在 Linux 发展过程中,配置内核可以使用以下工具。 #make config 这是基于文本的最为传统的配置界面,不推荐使用 #make menuconfig 基于文本菜单的配置界面,现在大部分都是使用这个工具来裁减配置内核的,本章节也是 介绍这种方法。 #make xconfig 要求 QT 被安装,用的比较少。 #make gconfig 要求 GTK,用的比较少。 上面不同的命令代表使用不同的工具,如下图所示,在源码目录下,输入命令“make config”。 ![]() 如上图所示,这是一个文本类型的配置工具,根据提示“scripts/kconfig/conf --oldaskconfig Kconfig”可以知道,这种方法是旧的配置方法,虽然 Linux 内核可能会长时间的支持,但是不人性化的操作方式,会降低效率,所以现在几乎淘汰了。 使用“Ctrl+c”可以退出配置界面,退出后,如下图所示。 ![]() 3.4.2 Menuconfig 操作方法 前面实验提到过 menuconfig 实现的代码在源码“scripts”目录下,不过这里根本不用关心它是怎么实现的,只需要掌握怎么操作即可,就像学习开车,要知道怎么打方向盘,而不需要知道方向盘和轮子之间是怎么传动的。 下面介绍 menuconfig 的操作方法。 如下图所示,在源码目录下,输入命令“make Menuconfig”。 ![]() 如下图所示,进入配置界面。这个功能界面对应配置工具,它包含配置命令解释器,对配置脚本中使用的命令进行解释;还包含了配置用户界面,用来提供字符界面和图形界面。这些配置工具都是使用脚本语言编写的,不过只用关心怎么使用。 ![]() 如下图所示,“方向按键”中的“左右”可以选择你需要的操作。“ |
网友评论