首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Kconfig与Makefile

毫不夸张地说,Kconfig和Makefile是我们浏览内核代码时最为依仗的两个文件。基本上,Linux内核中每一个目录下边都会有一个Kconfig文件和一个Makefile文件。...Kconfig和Makefile就是Linux Kernel迷宫里的地图。地图引导我们去认识一个城市,而Kconfig和Makefile则可以让我们了解一个Kernel目录下面的结构。...利用Kconfig和Makefile寻找目标代 就像利用地图寻找目的地一样,我们需要利用Kconfig和Makefile来寻找所要研究的目标代码。...这时就有必要先去阅读Kconfig和Makefile文件。 对于Kconfig文件,我们可以看到下面的选项。...Kconfig和Makefile很好的帮助我们定位到了所要关注的目标,就像我们到一个陌生的地方要随身携带地图,当我们学习Linux内核时,也要谨记寻求Kconfig和Makefile的帮助。

1.6K20
您找到你想要的搜索结果了吗?
是的
没有找到

Linux-Kconfig总结与分析

使用Kconfig时,需要注意的地方 1.在Kconfig中定义的配置宏,前缀都没有"CONFIG_",只有编译内核时,自动生成autoconf.h才会出现前缀. 2.如果XX_defconfig板卡配置文件中定义新的宏...=y时,而在Kconfig并没有声明它,则内核编译出来的autoconf.h里也不会定义它的. 3.如果XX_defconfig板卡配置文件中没有设置CONFIG_MODULES=y,则编译make modules...时将会失败,而make menuconfig时, Kconfig中的tristate参数也会被读写为bool参数(也就是不能设置m) CONFIG宏变量参数 bool: 表示该CONFIG宏只能选择...-探索宏变量参数 接下来我们来试试如何给不同宏设置不同参数,以MY_SYMBOL1~ MY_SYMBOL5为例 设置MY_SYMBOL3~ MY_SYMBOL5依赖于MY_SYMBOL2 修改内核顶层Kconfig...其中上面的CONFIG_MY_SYMBOL2_MODULE宏是因为我们在Kconfig设置它为default m,所以CONFIG_MY_SYMBOL2_MODULE是个模块宏.

2.7K20

Linux 内核中 Kconfig 文件的作用和添加 menuconfig 项的方法

这里就需要配置 Kconfig 文件了。本文简单说明一下如何修改。...便于需要时查找 Ref: Linux内核中Kconfig文件的作用 本文章采用 知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议 进行许可。...---------- Kconfig的作用 Kconfig就是服务于menuconfig的一个配置文件。在对应目录下配置Kconfig文件,就是在配置对应的menuconfig项目。...Makefile的修改 如果你修改了对应文件夹下面的Kconfig,那么你还要修改相应的Makefile才行。...以前文为例,我添加了配置项在Kconfig中,这个Kconfig的位置是drivers/char/,那么我必须在这个文件夹下的Makefile中添加一行: obj-$(CONFIG_XXXX_MOTOR

3.1K50

menuconfig 图形化配置

Kconfig文件是图形界面的描述文件,也就是描述界面应该有什么内容,很多目录下都会有 Kconfig 文件。   ...关于 Kconfig的详细语法介绍,可以参考 linux 内核源码(不知为何 uboot 源码中没有这个文件)中的文件Documentation/kbuild/kconfig-language.txt...一、Kconfig 语法简介 1.1、 mainmenu   顾名思义 mainmenu 就是主菜单,也就是输入“make menuconfig”以后打开的默认界面 1.2、调用其他目录下的 Kconfig...文件   和 makefile 一样, Kconfig 也可以调用其他子目录中的 Kconfig 文件,调用方法如下:   source “xxx/Kconfig” //xxx 为具体的目录名,相对路径...endmenu # my test menu   Kconfig 文件的最终目的就是在.config 文件中生成以“CONFIG_”开头的变量。

1.6K10

arm-linux 开发步骤

Kconfig以及内核裁减 Kconfig是用于定制内核的,有了交叉环境、BSP以及内核源码后,就可以做Kconfig.源码包的Makefile需要从.config得到信息以便把需要的东西编译到内核,不需要的东西不放进来...以下引用自互联网 Kconfig文档的作用 内核源码树的目录下都有两个文档Kconfig(2.4版本是Config.in)和Makefile。...分布到各目录的Kconfig构成了一个分布式的内核配置数据库,每个Kconfig分别描述了所属目录源文档相关的内核配置菜单。...*上面的内容说明了,Kconfig就是对应着内核的配置菜单。...假如要想添加新的驱动到内核的源码中,能够修改Kconfig,这样就能够选择这个驱动,假如想使这个驱动被编译,要修改Makefile so添加新的驱动时需要修改的文档有两种(注意不只是两个) *Kconfig

3.9K30

linux menuconfig搜索,linux系统menuconfig解析

介绍 跟make menuconfig这个命令相关的文件,包括三类,包括.config,Kconfig,Makefile。为什么不说三个,而说三类呢?...因为Kconfig和Makefile是配合使用的,在很多的子目录都存在,而.config只存在于根目录中。...这三个文件的作用分别是: Kconfig:定义了配置项 .config:对配置项进行赋值 Makefile:建立配置项的生成法则 三者的关系为:make menuconfig依赖于Kconfig进行系统可视化配置...,Kconfig为可视化配置菜单;在可视化配置界面修改完相应配置之后,生成的配置项保存在.config文件里,即对不同的配置项定义的赋值;在系统中运行make的时候,Makefile会依赖于.config...Management” source pm/Kconfig endmenu 如果有多级菜单的话,可以通过多级嵌套来实现,这里类似于if和fi关键字;如果当前menu下包含有其他路径下的Kconfig文件

1.1K30
领券