在.config中使oldconfig覆盖值

时间:2015-03-09 18:20:40

标签: linux linux-kernel makefile

我正在尝试编译linux内核并使用自定义的.config文件。

所以我将.config复制到我的内核源文件夹,并在文件上运行“make oldconfig”,看看我是否遗漏了任何内容。但是,似乎这样做会将我的一些值修改回我们编辑它们之前的值:

< CONFIG_TRACEPOINTS=y
---
> CONFIG_TRACEPOINTS=n
< # CONFIG_DEBUG_RODATA is not set
< # CONFIG_DEBUG_SET_MODULE_RONX is not set
---
> CONFIG_DEBUG_RODATA=n
> CONFIG_DEBUG_SET_MODULE_RONX=n

如何让oldconfig保留修改后的值?

由于

1 个答案:

答案 0 :(得分:1)

通常内核配置选项依赖于其他配置选项。因此,即使您禁用了一个配置选项,因为它通过其他配置选项启用,它会在您执行make oldconfig

之后回退到其原始值

如果是CONFIG_TRACEPOINTS,则它取决于或由其他几个标志TRACING [=y] || BLK_DEV_IO_TRACE [=y] && TRACING_SUPPORT [=y] && FTRACE [=y] && SYSFS [=y] && BLOCK [=y]

设置

尝试将其逐个设置为=n以及CONFIG_TRACEPOINTS=n,并在执行make oldconfig后查看其是否持续存在。对我来说,CONFIG_FTRACE=n工作

如何找到依赖项。运行make menuconfig。按/搜索配置选项,然后查看Selected by。这些是配置标志,他们也设置您的配置选项。查看它们旁边的当前值。对于例如您可以在上面看到TRACING_SUPPORT设置为y