gpt4 book ai didi

buildroot - 是否可以将配置片段与 Buildroot 的 .config 一起使用?

转载 作者:行者123 更新时间:2023-12-05 01:15:44 33 4
gpt4 key购买 nike

我将 Buildroot 用作子模块,并且我想通过自己的一些修改来重用现有的树内定义配置。

我只想将修改后的选项存储在配置片段中,就像我可以使用 BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES 一样对于 Linux 内核配置。

现在我正在做类似的事情:

cd buildroot
make BR2_EXTERNAL="$(pwd)/../mypackage" qemu_x86_64_defconfig
echo '
BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES="../kernel_config_fragment"
BR2_ROOTFS_OVERLAY="../rootfs_overlay"
' >> .config
make

有没有更好的方法来避免 echo使用配置片段,就像我用于 Linux 内核配置片段一样?我希望是这样的:
make BR2_CONFIG_FRAG=br_config_frag

在哪里 br_config_frag包含以下行:
BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES="../kernel_config_fragment"
BR2_ROOTFS_OVERLAY="../rootfs_overlay"

然后我就可以写:
make -C buildroot BR2_CONFIG_FRAG=br_config_frag qemu_x86_64_defconfig all

这是完整的 example repo .

编辑

一个小小的改进是将“配置片段”放在一个单独的文件中 buildroot_config_fragment :
BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES="../kernel_config_fragment"
BR2_ROOTFS_OVERLAY="../rootfs_overlay"

然后 cat那:
cat ../buildroot_config_fragment >> .config

最佳答案

首先说明:您的脚本应该运行 make olddefconfig之前 make ,以便将任何新选项设置为其默认值,而不是以交互方式询问。

您可以通过以下方式简化脚本:

cat configs/qemu_x86_64_defconfig br_config_frag > .config
make olddefconfig

您也可以使用脚本 support/kconfig/merge_config.sh来自 kconfig 基础架构。但是,该脚本在内部使用 make alldefconfig当前不起作用-您需要 a patch为了那个原因。

如果您想添加对 BR2_CONFIG_FRAG 的支持对于 Buildroot 基础设施,请随时发送补丁到 the Buildroot mailing list !

关于buildroot - 是否可以将配置片段与 Buildroot 的 .config 一起使用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44078245/

33 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com