Buildroot内でLinuxカーネルを構成するにはどうすればよいですか?
質問
x86ターゲット用のrootfsを構築しようとしていますが、これは十分に簡単です。ただし、buildrootが生成するカーネルをどのように構成するかはわかりません。最初の実行はmenuconfigで思いつきましたが、それ以来.configをキャッシュしているので、どこで変更するかわかりません。
〜650MBのカーネルモジュールは、組み込みターゲット:P
に対して良いことをしません。 buildroot内でカーネルを設定する簡単な方法はありますか? uclibc-menuconfig
ターゲットのようなものは完璧でしょう。
解決 2
そして答えは:
make linux26-menuconfig
他のヒント
私は常に次のことをしています:
- Linuxカーネルの構成:
make linux-menuconfig
- menuconfigを終了すると、設定はファイル
output / build / linux-XYZ / .config
に保存されます。 XYZ はカーネルバージョンです。 - その後、ファイル
output / build / linux- * XYZ * /。config
をboard / your_kernel_config / .config
にコピーできます
- Buildroot menuconfigの後で、カーネル設定でカスタムカーネル設定ファイルを使用するように設定し、パスを入力できます:
board / your_kernel_config / .config
menuconfigでdefconfigもi386に設定することを忘れないでください:
Kernel —>
[*] Linux Kernel
(i386) Defconfig name
BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES
既存の構成に追加の構成を追加します。
たとえば、サブモジュールとして buildroot
を使用している場合、ディレクトリツリーは次のようになります:
.git/
buildroot/
.gitmodules
kernel-config-frag
E.g。 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
と追加の構成との差分をgit trackできます。
これは、 Linuxカーネルの.configファイルの機能を非対話的にオンにするにはどうすればよいですか
設定フラグメントを変更したら、次のことを忘れないでください:
rm -rf buildroot/output/build/linux-*.*.*/
次のビルドの前。
BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE
使用する完全な .config
を選択します。
何らかの理由で、これを有効にするためにカーネルの .config
を削除する必要がありますか? なぜBR2_LINUX_KERNEL_CUSTOM_CONFIG_FILEを変更してmake linux-reconfigureを実行すると、カーネルの.configは変更されませんか?
手順は次のとおりです。
-
cd buildroot /
-
make menuconfig
-
カーネル-> Linuxカーネル->カーネルバージョン