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

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.8K20
您找到你想要的搜索结果了吗?
是的
没有找到

Kconfig与Makefile

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

1.6K20

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

这里就需要配置 Kconfig 文件了。本文简单说明一下如何修改。...便于需要时查找 Ref: Linux内核中Kconfig文件的作用 本文章采用 知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议 进行许可。...---------- Kconfig的作用 Kconfig就是服务于menuconfig的一个配置文件。在对应目录下配置Kconfig文件,就是在配置对应的menuconfig项目。...完成了make menuconfig之后,内核会生成.config文件,就在Linux代码树的根目录下。这个文件制定了各个模块是否会被编译,由Makefile读取并在编译过程中配置内核。...以前文为例,我添加了配置项在Kconfig中,这个Kconfig的位置是drivers/char/,那么我必须在这个文件夹下的Makefile中添加一行: obj-$(CONFIG_XXXX_MOTOR

3.2K50

arm-linux 开发步骤

ARM-Linux开发步骤 拿到一块YC2440(s3c2440)的开发板,经过几天的学习,我对arm-linux系统开发步骤有了一些认识。...基本上u-boot是一个精简的linux,它提供人机交换的,一般现在linux开发都采用串口方式使用u-boot。...内核 Linux内核部分是工作量比较多的部分 1. 交叉编译 2. BSP 3. Kconfig以及内核裁减 4. 镜像制作和烧写 交叉编译 关于交叉编译,网络上有很多文章。...Kconfig以及内核裁减 Kconfig是用于定制内核的,有了交叉环境、BSP以及内核源码后,就可以做Kconfig.源码包的Makefile需要从.config得到信息以便把需要的东西编译到内核,不需要的东西不放进来...分布到各目录的Kconfig构成了一个分布式的内核配置数据库,每个Kconfig分别描述了所属目录源文档相关的内核配置菜单。

4K30

menuconfig 图形化配置

uboot 或 Linux 内核可以通过输入“make menuconfig”来打开图形化配置界面, menuconfig是一套图形化的配置工具,需要 ncurses 库支持。...或 Linux 内核 的配置项,使用 menuconfig 配置完 uboot或 Linux 内核 以后肯定要更新.config 文件。...Kconfig文件是图形界面的描述文件,也就是描述界面应该有什么内容,很多目录下都会有 Kconfig 文件。   ...关于 Kconfig的详细语法介绍,可以参考 linux 内核源码(不知为何 uboot 源码中没有这个文件)中的文件Documentation/kbuild/kconfig-language.txt...文件   和 makefile 一样, Kconfig 也可以调用其他子目录中的 Kconfig 文件,调用方法如下:   source “xxx/Kconfig” //xxx 为具体的目录名,相对路径

1.6K10

linux menuconfig搜索,linux系统menuconfig解析

在对linux进行编译,常用的命令是make menuconfig,使用图形界面来对整个系统进行裁剪;这里主要就make menuconfig的执行过程进行解析。...这三个文件的作用分别是: Kconfig:定义了配置项 .config:对配置项进行赋值 Makefile:建立配置项的生成法则 三者的关系为:make menuconfig依赖于Kconfig进行系统可视化配置...菜单选项 Kconfig里的菜单选项的添加通过menu和endmenu关键字来添加,主菜单名称通过mainmenu来命名;mainmenu “Linux Configuration” menu “Power...Management” source pm/Kconfig endmenu 如果有多级菜单的话,可以通过多级嵌套来实现,这里类似于if和fi关键字;如果当前menu下包含有其他路径下的Kconfig文件...config HOST_LINUX bool “Linux” config HOST_OSX bool “OSX” config HOST_WINDOWS bool “Windows” config

1.2K30

如何增加内核模块

Kconfig 1.先了解一下Kconfig的语法:  一个典型的内核配置菜单如下: menu "Network device support"  config NETDEVICES         ...目录层次迭代  在Kconfig中有类似语句:source "drivers/usb/Kconfig"  用来包含(或嵌套)新的Kconfig文件,这样便可以使各个目录管理各自的配置内容,使不必把那些配置都写在同一个文件里...下面我们以实例来说明这几个文件的作用 Step1:编辑配置文件Kconfig,加入驱动选项,使之在make menuconfig 的时候出现  打开 linux-2.6.32.2/drivers/char.../Kconfig 文件,添加如图所示: ?...我们虽然可以在配置内核的时候进行选择,但实际上此时执行编译内核还是不能把mini2440_hello_module.c 编译进去的,还需要在Makefile 中把内核配置选项和真正的源代码联系起来,打开linux

1.6K50

menuconfig过程详解

这里面一共涉及到了一下几个文件我们来一一讲解 Linux内核根目录下的scripts文件夹 arch/$ARCH/Kconfig文件、各层目录下的Kconfig文件 Linux内核根目录下的...makefile文件、各层目录下的makefile文件 Linux内核根目录下的的.config文件、arm/$ARCH/下的config文件 Linux内核根目录下的 include/...文件生成整个配置界面选项(Kconfig是整个linux配置机制的核心),那么ARCH环境变量的值等于多少呢?...最后我们会发现,整个linux内核配置过程中,留给用户的接口其实只有各层Kconfig、makefile文件以及对应的源文件。...比如我们如果想要给内核增加一个功能,并且通过make menuconfig控制其声称过程 首先需要做的工作是:修改对应目录下的Kconfig文件,按照Kconfig语法增加对应的选项;

70920
领券