Question

J'essaie de créer un rootfs pour une cible x86, ce qui est assez simple. Cependant, je n'arrive pas à comprendre comment configurer le noyau produit par buildroot. Menuconfig est apparu lors de la première exécution, mais le fichier .config a été mis en cache depuis et je ne vois pas où le modifier.

~ 650 Mo de modules du noyau ne font pas de bonnes choses pour une cible intégrée: P

Existe-t-il un moyen simple de configurer le noyau dans buildroot? Quelque chose comme la cible uclibc-menuconfig serait parfait.

Était-ce utile?

La solution 2

Et la réponse est:

make linux26-menuconfig

Autres conseils

Je fais toujours ce qui suit:

  1. configurer le noyau Linux: make linux-menuconfig
  2. Après avoir quitté menuconfig, votre configuration sera stockée dans le fichier: sortie / build / linux-XYZ / .config XYZ est la version de votre noyau.
  3. Ensuite, vous pouvez copier le fichier sortie / build / linux- * XYZ * /. config dans carte / your_kernel_config / .config
  4. plus tard dans Buildroot menuconfig, vous pouvez configurer les paramètres du noyau pour utiliser un fichier de configuration de noyau personnalisé et entrer le chemin: carte / votre_configuration_kernel / .config

N'oubliez pas de définir également defconfig sur i386 dans menuconfig:

  Kernel  —>
  [*] Linux Kernel
  (i386) Defconfig name 

BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES

Ajoute des configurations supplémentaires à votre configuration existante.

Exemple: si vous utilisez buildroot en tant que sous-module, l’arborescence de répertoires ressemble à ceci:

.git/
buildroot/
.gitmodules
kernel-config-frag

E.g. pour activer CONFIG_DEBUG_FS , faites:

echo 'CONFIG_DEBUG_FS=y' > kernel-config-frag

puis configurez buildroot avec:

cd buildroot
make qemu_x86_64_defconfig
echo 'BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES=../kernel-config-frag' >> buildroot/.config
make

De cette façon, vous ne pouvez suivre que la différence entre qemu_x86_64_defconfig et vos configurations supplémentaires.

Je crois que cela utilise scripts / kconfig / merge_config.sh pour former le noyau, comme indiqué à: Comment activer de manière non interactive les fonctionnalités dans un fichier .config du noyau Linux?

Après avoir modifié le fragment de configuration, n'oubliez pas de faire:

rm -rf buildroot/output/build/linux-*.*.*/

avant la prochaine construction.

Exemple minimal exécutable à l'adresse: Pourquoi quand Je change BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE et lance make linux-reconfigure le noyau .config ne change pas?

Les étapes sont les suivantes:

  1. cd buildroot /

  2. make menuconfig

  3. Noyau - > Noyau Linux - > Version du noyau

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top