linux-3.2.0内核-kconfig.txt翻译

2.3 <kconfig.txt>文档内容
这个文件包含了使用"make *config"的一些帮助。使用"make help"列出所有可能的配置
目标板。
xconfig ('qconf') 和 menuconfig ('mconf')程序里也包含内置的帮助文档。Be sure to check
it for navigation, search, and other general help text.
2.3.1 通用
通常,新内核发布的时候,都会介绍新 config 符号。更为重要的是,新内核发布可以重
新命令 config 符号。这时候,使用先前的.config 文件,并运行命令“make oldconfig”可能不
会给你生成一个可用的内核,所以,你会发现你还是需要看看新的内核配置符号是什么。
使用"make oldconfig"的时候,可以列出新的 config 符号,如下:
cp user/some/old.config .config
yes "" | make oldconfig >conf.new
config 工具将会列出未知值的新符号。当然了,.config 文件也会用新值更新,所有你可
以使用:
grep "(NEW)" conf.new
为了看新的 config 符号或你可以 “diff” 新的和旧的.config 文件查看不同的地方:
diff .config.old .config | less
(看到这里,你是不是想是否有更好的办法?答案是对的,我们需要一些更好的方法。)
2.3.2 '*config' 的环境变量
KCONFIG_CONFIG
这个环境变量被用来指定一个默认的内核 config 文件名称去覆盖".config"默认名称。
KCONFIG_OVERWRITECONFIG
如果你在编译环境里设置了 KCONFIG_OVERWRITECONFIG 变量,当.config 通过符号
链接到其它文件时,Kconfig 不会打断符号链接。
该环境变量主要用于'{allyes/allmod/allno/rand}config'。
KCONFIG_ALLCONFIG
(partially based on lkml email from/by Rob Landley, re: miniconfig)
释义:config 的变体能使用环境变量 KCONFIG_ALLCONFIG(所赋的值)作为一个标识或者是文件名(包含了用户想用的特殊值作为的配置符号)。如果 KCONFIG_ALLCONFIG
被用了,但是没给它赋值,那么“make *config”会通过检查一个个名字为“all{yes...}.config”
的文件(与 make *config 命令一致的文件),以强制使用那个符号值。但如果都没找到,那
就查找所有的名字为 all.config 的文件以把找到的值强制赋予给这个环境变量。
这让你可以根据自己的兴趣或者是需求,创建小配置文件或者是客户配置文件。而内核
提供全配置文件(默认配置),包括了你所配置的小配置文件里用到的所有符号。
allyesconfig/allmodconfig/allnoconfig/randconfig 这些 config 的变体也能使用环境变量
KCONFIG_ALLCONFIG 作为标志和文件名,里面包含了用户想要的特殊值作为 config 符号
值。如果 KCONFIG_ALLCONFIG 被使用了,但是没有指定文件名,"make *config" 检查名
为"all{yes/mod/no/def/random}.config"的文件(这里是与使用的 make *config 命令对应的),
强制使用这个文件里的符号值。如果这个文件没有发现,就会检查名为"all.config"的文件,
而是强制使用这个文件里的值。
这个功能使你创建“miniature”config(也就是 miniconfig)或用户定制 config 文件(里面
包含你所喜欢的 config 符号)。然后,内核 config 系统产生全部的.config 文件,包含你的
miniconfig 文件里的配置符号。
'KCONFIG_ALLCONFIG' 文件是 config 文件,它包含预先设置的 config 符号(通常是
所有符号的子集)。这些变量设置仍然服从于正常的依赖性检查。例如:
KCONFIG_ALLCONFIG=custom-notebook.config make allnoconfig

KCONFIG_ALLCONFIG=mini.config make allnoconfig

make KCONFIG_ALLCONFIG=mini.config allnoconfig
这些例子将会失能大多数的选项(allnoconfig),但是,能够控制(使能或失能)那些在
指定的 mini-config 文件中列出的选项。
2.3.3 'silentoldconfig'环境变量
KCONFIG_NOSILENTUPDATE
如果这个变量具有非空值,它阻止静默内核 config 更新(要求明确的更新)

KCONFIG_AUTOCONFIG
该 环 境 变 量 被 设 置 , 用 来 指 定 auto.conf 文 件 的 路 径 和 名 称 。 它 的 默 认 值 是
"include/config/auto.conf"。
KCONFIG_TRISTATE
该 环 境 变 量 被 设 置 , 用 来 指 定 tristate.conf 文 件 的 路 径 和 名 称 。 它 的 默 认 值 是
"include/config/tristate.conf"。
KCONFIG_AUTOHEADER该 环 境 变 量 被 设 置 , 用 来 指 定 autoconf.h 文 件 的 路 径 和 名 称 。 它 的 默 认 值 是
"include/generated/autoconf.h"。
2.3.4 menuconfig
config 符号的搜索
(1)Menuconfig 配置菜单里的搜索:
搜索功能搜索内核配置符号的名称,所以,你必须知道你想要寻找符号的一些紧密相关
的信息。
例如,在配置菜单界面键入“/”,然后就会弹出输入字符串的对话框,键入“hotplug”:
/hotplug
这 条 命 令 将 会 列 出 所 有 的 包 含 “hotplug” 字 符 串 的 config 符 号 的 对 话 框 。 例 如 ,
HOTPLUG,HOTPLUG_CPU,MEMORY_HOTPLUG。
对于搜索帮助,键入 /,后面紧跟 3 个 TAB 键(TAB-TAB-TAB,高亮<Help>)
,并 enter。
这将告诉你搜索字符串的正则表达式,所以,如果你对 MEMORY_HOTPLUG 配置符号不
感兴趣的话,可以尝试:
/^hotplug
2.3.5 menuconfig 的用户接口选项
MENUCONFIG_COLOR
选择菜单的不同颜色主调,可以使用该变量实现。例如:
make MENUCONFIG_COLOR=<theme> menuconfig
可以利用的颜色主题有:
mono
=> 选择单色显示(合适的颜色)
blackbg
=> 选择黑白显示
classic
=> 蓝色背景,经典视图
bluetitle
=> 友好的 LCD 交互界面(默认)
MENUCONFIG_MODE
这个模式展示了所有的子菜单,用一种菜单项树的形式。
例如:
make MENUCONFIG_MODE=single_menu menuconfig
2.3.6 xconfig
xconfig 的搜索方式:
搜索功能也是为了搜索内核配置符号的名字,所以,你也必须应该知道你要搜索的符号的一部分或者全部。例如:
Ctrl-F hotplug

Menu: File, Search, hotplug
列出符号名称中包含“hotplug”字样的所有 config 符号入口。在这个搜索对话框里,你可
以改变任何没有变灰的符号入口的 config 设置。你可以不用返回主菜单,而是键入不同的搜
索字符串进行搜索。
2.3.7 gconfig
gconfig 的搜索方式:
无(gconfig 不如 xconfig 或 menuconfig 维护的那样好);但是,gconfig 确实比 xconfig
拥有更多的视图选项。
全志R16平台编译linux系统V1.0.txt 2017/4/11 13:36 (编译请使用编译android的lichee的选项编译生成的.config文件,不然直接编译会报错!!!!) rootroot@cm-System-Product-Name:/home/wwt/linux_r16$ tar zxvf lichee_parrotv1.1_20161202.tar.gz rootroot@cm-System-Product-Name:/home/wwt/linux_r16$ cd lichee/ rootroot@cm-System-Product-Name:/home/wwt/linux_r16/lichee$ ./build.sh config Welcome to mkscript setup progress All available chips: 0. sun8iw5p1 Choice: 0 All available platforms: 0. android 1. dragonboard 2. linux 3. tina Choice: 2 All available kernel: 0. linux-3.4 Choice: 0 All available boards: 0. bell-one 1. evb 2. evb-20 3. evb-30 4. evb-rtl8723bs 5. sc3813r Choice: 3 rootroot@cm-System-Product-Name:/home/wwt/linux_r16/lichee$ ./build.sh 错误1: KCONFIG_AUTOCONFIG=/home/wwt/linux_r16/lichee/out/sun8iw5p1/linux/common/buildroot/build/buildroot-config/auto.conf KCONFIG_AUTOHEADER=/home/wwt/linux_r16/lichee/out/sun8iw5p1/linux/common/buildroot/build/buildroot-config/autoconf.h KCONFIG_TRISTATE=/home/wwt/linux_r16/lichee/out/sun8iw5p1/linux/common/buildroot/build/buildroot-config/tristate.config BUILDROOT_CONFIG=/home/wwt/linux_r16/lichee/out/sun8iw5p1/linux/common/buildroot/.config /home/wwt/linux_r16/lichee/out/sun8iw5p1/linux/common/buildroot/build/buildroot-config/conf --silentoldconfig Config.in # # make dependencies written to .auto.deps # ATTENTION buildroot devels! # See top of this file before playing with this auto-preprequisites! # make[1]:正在离开目录 `/home/wwt/linux_r16/lichee/buildroot' You must install 'makeinfo' on your build machine makeinfo is usually part of the texinfo package in your distribution make: *** [dependencies] 错误 1 make:离开目录“/home/wwt/linux_r16/lichee/buildroot” ERROR: build buildroot Failed rootroot@cm-System-Product-Name:/home/wwt/linux_r16/lichee$ d/buildroot-config/conf.o /home/wwt/linux_r16/lichee/out/sun8iw5p1/linux/common/buildroot/build/buildroot-config/zconf.tab.o -o /home/wwt/linux_r16/lichee/out/sun8iw5p1/linux/common/buil
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值