Linux kernel 如何从.config创建defconfig文件?

Linux kernel 如何从.config创建defconfig文件?,linux-kernel,embedded-linux,kbuild,archlinux-arm,Linux Kernel,Embedded Linux,Kbuild,Archlinux Arm,我为一块板defconfig做了makemenuconfig,并修改了一些配置。当我选择save时,在内核顶部目录中创建了一个新的.config 我想为创建的.config文件创建新的defconfig 我能否将.config复制为新的defconfig并复制到arch/arm/configs/ $ cp .config arch/arm/configs/board_new_defconfig 我认为您只需执行一个命令,并根据需要使用创建的文件 % make savedefconfig %

我为一块板
defconfig
做了
makemenuconfig
,并修改了一些配置。当我选择save时,在内核顶部目录中创建了一个新的
.config

我想为创建的
.config
文件创建新的
defconfig

我能否将
.config
复制为新的
defconfig
并复制到
arch/arm/configs/

$ cp .config arch/arm/configs/board_new_defconfig

我认为您只需执行一个命令,并根据需要使用创建的文件

% make savedefconfig 
% cp defconfig arch/arm/configs/my_cool_defconfig
要获得所有可能的目标,只需运行

% make help
正如后面提到的,Buildroot发行版的用户可以为此目的使用包装器,即(根据Buildroot手册,):

  • linux-savedefconfig用于
    linux
  • barebox savedefconfig用于
    barebox
    bootloader
  • uboot savedefconfig用于
    U-Boot
    bootloader

make savedefconfig
跳过其他人暗示的冗余配置。

对于您的平台,在新的defconfig文件中,是。事实上,这是创建新defconfig最安全的方法。如果手动从现有配置文件中删除配置项以创建新的配置文件,则可能会出现依赖项问题,并且在生成过程中,它可能会重新启动内核配置并提示您选择各个配置选项。

是的,复制该文件可以工作。但是由于
defconfig的
已知具有最少的电路板配置,因此最好删除一些对您来说不是任意的与电路板相关的
CONFIG\uuuuuxxxxxx
:哈!我用我的_kool u作为元变量,我自己!linux savedefconfig呢?这些离散的defconfig,一个用于buildroot和所有附件包,一个用于linux内核本身,不是吗?您可以这样做:按照buildroot手册制作linux savedefconfig。我认为让linux menuconfig和linux savedefconfig与menuconfig和savedefconfig目标一样对应,不是吗?请注意,在生成此defconfig之后,将按字母顺序排序,但不按字母顺序排序,“make linux savedefconfig”只有在使用“buildroot”构建嵌入式linux时才有用,OP没有提到。然而,我在AdamMiller的评论中添加了+1,因为这正是我想要的,其他buildroot用户可能会在这里结束。