Yocto bitbake Linux 内核配置文件位置

问题描述 投票:0回答:2

在哪里可以找到用于构建内核的

.config
文件?

我用:

$ bitbake virtual/kernel -c menuconfig to open the menuconfig

我刚刚运行了

menuconfig
,我有一个大问题:没有激活的选项。 .config 文件(?)看起来已被删除或损坏

我有两个目录:

  • 旧的 yocto 配置与最新的内核配置。
  • 一个新的配置(我正在研究它),但内核配置已损坏。

我必须获取旧的配置文件并将其粘贴到损坏的配置中。

提前致谢。

kernel config yocto bitbake
2个回答
7
投票

Yocto 通过不同方式查找内核配置,

    Linux 内核中的
  1. defconfig:您可以在配方中指定
    KBUILD_DEFCONFIG
    变量以使用源代码树中已存在的
    defconfig
  2. 您可以将 defconfig 添加到您的 Linux 内核配方的
    SRC_URI
    中或在
    .bbappend
    中添加到您的内核配方(可能位于不同的层)。

如果您使用menuconfig修改内核配置文件为

bitbake virtual/kernel -c menuconfig
,那么bitbake开关也会这样做,

  1. 找到变量中的默认提供程序
    PREFERRED_PROVIDER_virtual/kernel
  2. 切换到
    tmp/work/<MACHINE_NAME>-<DISTRO_NAME>-linux-gnuenabi/<PREFERRED_PROVIDER_virtual/kernel>/<KERNEL_VERSION>/linux-*build/
    并使用相应的交叉编译器前缀运行
    make menuconfig

如果你很幸运并且没有意外保存(两次)menuconfig输出,那么你会在上面的路径中找到保存的配置为

.config.old
。通常你会找到两个/三个 .config 文件,

  1. .config:当前活动配置
  2. .config.old:以前的活动配置
  3. .config.orig :来自
    SRC_URI
    的 defconfig 或内核 defconfig 选项本身的实际配置

注意:内核在

tmp/work-shared/<MACHINE>/kernel-source/
中作为源代码(在 do_unpack 期间)提取并链接到
tmp/work/<MACHINE_NAME>-<DISTRO_NAME>-linux-gnuenabi/<PREFERRED_PROVIDER_virtual/kernel>/<KERNEL_VERSION>/git


1
投票

在这个文件夹中就可以了:

tmp/work/<MACHINE_NAME>-<DISTRO_NAME>-linux-gnuenabi/<PREFERRED_PROVIDER_virtual/kernel>/<KERNEL_VERSION>/linux-*/build/

我有我的.config 非常感谢!

© www.soinside.com 2019 - 2024. All rights reserved.