我正在尝试为x86目标构build一个rootfs,这足够简单。 但是我不知道如何configurationbuildroot生成的内核。 第一次运行通过了menuconfig,但是从那以后caching了.config,我看不到在哪里改变它。
〜650MB的内核模块对embedded式目标没有好处:P
有一种简单的方法来configurationbuildroot内核? 像uclibc-menuconfig
目标是完美的。
我总是这样做:
make linux-menuconfig
output/build/linux-XYZ/.config
里,其中XYZ是你的内核版本。 output/build/linux-*XYZ*/.config
复制到board/your_kernel_config/.config
board/your_kernel_config/.config
答案是:
make linux26-menuconfig
不要忘记在menuconfig中设置defconfig到i386:
coreel —> [*] Linux coreel (i386) Defconfig name
BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES
是另一个不错的选择。
例如,如果您使用buildroot
作为子模块,则目录树如下所示:
.git/ buildroot/ .gitmodules kernel-config-frag
例如打开CONFIG_DEBUG_FS
,执行:
echo 'CONFIG_DEBUG_FS=y' > kernel-config-frag
然后使用以下命令配置buildroot:
cd buildroot make qemu_x86_64_defconfig echo 'BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES=../kernel-config-frag' >> buildroot/.config make
这样你就可以跟踪qemu_x86_64_defconfig
和你额外的配置之间的差异。
我相信这使用从内核的scripts/kconfig/merge_config.sh
如上所述: 你如何非交互地打开Linux内核.config文件中的功能?
在更改配置片段后,只要记住要做:
rm -rf buildroot/output/build/linux-*.*.*/
在下一次构建之前。
最小的可运行示例: https : //github.com/cirosantilli/linux-kernel-module-cheat/blob/bb8f4eb79565c9771356c80e0964c8fefc163e11/kernel-config-frag