カーネルをクロスコンパイルしており、デバイスベンダーから提供されたツリー外部カーネルモジュールがあります。カーネルが最初にビルドされた後、モジュールは正しく実行されました。
カーネルでinitramfsを有効にしようとしています。カーネルモジュールはinitramfsイメージに含める必要があります。これは循環依存性を引き起こす。
- カーネルはinitramfsイメージファイル(に設定されている
CONFIG_INITRAMFS_SOURCE
)によって異なります。 - initramfs イメージファイルはツリーの外部カーネルモジュールによって異なります。
- ツリーの外部カーネルモジュールは、構築しているカーネルによって異なります。
私の最善の解決策は次のとおりです。
- initramfs rootfs イメージの空のファイルを作成します。
- カーネルビルド
- ビルディングブロック
- 実際の initramfs イメージのビルド
- カーネルの再構築
しかし、これはmake
依存関係の追跡を中断し、通常の開発サイクル中に不必要な再構築を大量に引き起こします。実際にカーネル全体をビルドせずにツリーの外部モジュールに必要なツールをビルドできるカーネルビルドターゲットはありますか?