03_Menuconfig_Kconfig

itop4412学习记录​​​​​​​

3.1 Menuconfig的操作

• Linux编译器通过.config文件确认哪些代码编译进内核,哪些被裁减掉

• menuconfig是生成.config的一个工具

• 在Linux发展过程中,配置内核可以使用一下命令:

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

– #make menuconfig(基于文本菜单的配置界面)

– #make xconfig(要求QT被安装)

– #make gconfig(要求GTK+被安装)

 

• 在Linux源码目录下输入命令make Menuconfig,可以进入配置界面

– menuconfig实现的代码在源码“scripts”目录下(了解即可)

• 常用操作

– 上下选择→按键“上下方向键”

– 左右选择→按键“左右方向键”

– 进入下级界面→按键“回车”

– 返回上级界面→选择“Exit”+按键“回车”

– 帮助→选择“help”+按键“回车”

 

• 搜索

– 界面输入“/”,输入查找关键词,输入“回车”即可搜索

• 使用“空格”键选择具体驱动配置,有三种状态

– “M”编译成模块(需要在编译文件里面特殊定义,后面介绍)

– “空”不编译状态

– “*”编译进内核

• 退出

– 不保存退出

– 保存退出

 

3.2 Kconfig和.config文件

(1)Kconfig

• Kconfig也是通过脚本编写而成,所以学会“仿写”即可

• Kconfig文件在每一级目录下都有,源码下的如下图所示,路径为/home/topeet/iTop4412_Kernel_3.0/Kconfig

– mainmenu菜单可以看到平台“arm”和内核版本“3.0.15”

driver目录下的Kconfig分析

举例:drivers/Kconfig文件source "drivers/char/Kconfig"与drivers/char/Kconfig的menu "Character devices"对应关系。

• menu "Device Drivers"菜单类

– source “xxx”

• menu "Character devices"

– source "xxx"

• 最终选项

– Enable LEDS config

(2).config文件

• 源码中带的config_for_xxx都是针对不同的操作系统或者功能裁减的.config文件。

3.3 Linux内核配置裁减(实验)

• 在Kconfig中的添加HELLO,然后查看menuconfig

• 将HELLO定义为“tristate”,可选为“M”状态

• 配置和裁减HELLO的驱动,查看.config文件的变化

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

snaking616

你的鼓励是我最大的动力!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值