【问题标题】:How to maintain only a small set of non-default kernel configs?如何只维护一小组非默认内核配置?
【发布时间】:2022-06-26 00:52:29
【问题描述】:

我希望能够只维护一小组内核配置并为其余配置使用默认值。

举个简单的例子:我想只维护配置值。像这样:

CONFIG_ILLEGAL_POINTER_VALUE=0xdebb000000000000

并使用它来构建内核 v3.x、v4.x 和 v5.x。

因为我只关心这个内核配置值,所以其他的都可以是默认值。

我该怎么做?

【问题讨论】:

  • diff -u default_config config >config_patch
  • @stark 我不明白。

标签: linux-kernel kbuild


【解决方案1】:

您可以在运行make 之前将所有想要覆盖的配置选项添加到一个简单的 Bash 脚本中,该脚本将它们导出为环境变量。对于您想要禁用的选项(即从y 设置为n),您需要直接修改.config 文件,因为简单地将它们导出为=n 将不起作用。

#!/bin/bash

make defconfig

# Options you want to modify
export CONFIG_FOO=123
export CONFIG_BAR=456

# Options which you want to disable
sed -ie '/CONFIG_BAZ=y/ s/=y/=n/' .config

make all -j

请注意,您应该检查配置依赖项(使用make menuconfigmake gconfig)以查看您正在处理的配置选项是否也依赖于其他配置选项或将其他配置选项作为依赖项。在这种情况下,您还希望根据需要在 Bash 脚本中包含这些内容。

【讨论】:

  • 这不适用于 Y 且您要删除的配置。
  • @stark 谢谢,已更新
猜你喜欢
  • 2011-08-02
  • 1970-01-01
  • 1970-01-01
  • 2017-11-14
  • 2019-11-19
  • 2020-06-25
  • 2023-03-13
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多