YoctoベースのEmbedded Linuxディストリビューションでは、次のようなイメージ作成レシピを実行する前に、ビルドされてイメージファイルにインストールされる各依存レイヤーからのパッケージ/レシピ/カーネルモジュールの完全なリストを見つけることに本当に興味があります。
bitbake my-image-minimal
これを達成する方法はありますか?この点に関するガイダンスは大歓迎です。
前もって感謝します。
はい、このように古いBitbakeバージョンでは:
bitbake -g <image> && cat pn-depends.dot | grep -v -e '-native' \
| grep -v digraph | grep -v -e '-image' | awk '{print $1}' | sort | uniq
新しいもので:
bitbake -g <image> && cat pn-buildlist | grep -ve "native" | sort | uniq
はい、
Yoctoは、パッケージ情報を/tmp/deploy/images/<"machine_image">/<"image_name">.manifestにあるマニフェストファイルの形式で保持しています。
リストは、生成された.manifest
ファイルで確認できます。 IMAGE_MANIFEST を参照
iNHERIT + = "buildhistory"をconf/local.confに追加して再構築します
これについては以前に話しましたが、さまざまな理由により、完全なビルドプロセスを実行しないと、イメージに含まれるパッケージを知ることは困難です。
イメージとは何かを確認するための最良のツールの1つは、buildhistoryクラスです。 local.confのユーザークラスに追加します。出力は、ビルド履歴ディレクトリのビルドディレクトリに格納されます。