GitにBitBake設定を保存する正しい方法は何ですか?

GitにBitBake設定を保存する正しい方法は何ですか?

gitでbitbakeの設定と使用されたレイヤーを追跡する正しい方法は何ですか?

答え1

これが私が見つけた最も効果的な方法です:

  • my-yoctoたとえば、少なくとも50 GBの空き容量を持つドライブに空の新しいgitリポジトリを作成します。
  • 次へ追加心が狭いとして子サブモジュールmy-yocto
git submodule add git://git.yoctoproject.org/poky.git
  • my-yoctoルートディレクトリで実行します。
source poky/oe-init-build-env .

Yocto GBの一時my-yoctoファイルが 。pokypoky

  • このスクリプトは、いくつかのファイルを含むconfディレクトリを作成し、それをリポジトリに追加します。my-yoctoconf/local.confconf/bblayers.conf
  • デフォルトでは、yoctは絶対パスに設定されますbblayers.conf。これは、Aliceによって設定されたストレージがBobのコンピュータで実行できないことを意味します。bblayers.confYocto変数を使用して修正してこの問題を解決しました${TOPDIR}
(...)
BBLAYERS ?= " \
  ${TOPDIR}/poky/meta \
  ${TOPDIR}/poky/meta-poky \
  ${TOPDIR}/poky/meta-yocto-bsp \
(...)
  • サポートされているプラ​​ットフォームで編集してくださいlocal.confMACHINE=beaglebone-yocto

  • my-yocto実行しますbitbake core-image-minimal。コンピュータの風通しが良いことを確認し、ハイキングに行きます。

これが機能する場合は、サブモジュールとしてMeta-openembeddedなどを追加して残りの構成を構築できます。すべてのカスタムレイヤーは、gitサブモジュールの詳細とbitbake設定のみを含むようにmy-yoctogitリポジトリから分離することをお勧めします。my-yocto

ビルドする前に更新するには、次の手順を実行します。

git pull
git submodule update --remote --recursive

git submodule init他のユーザーは複製後に一度実行する必要がありますmy-yocto

他の2つの提案:

まず、複数のシステム用に構築する場合は、システムごとにlocal.confを作成し、local.confからシステム固有のconfファイルへのシンボリックリンクを作成します。これにより、複数のコンピュータを追跡できますmy-yocto

次に、各yoctoブランチ(たとえばtmp-zeus、、、、、tmp-dunfellなどtmp-gatesgarth)の一時ディレクトリを作成し、ビルドするブランチtmpへのシンボリックリンクを作成します。 (gitに追加しないでください。)Yoctoはディレクトリに多くのデータを蓄積し、tmpブランチtmpを切り替えるときにそれをクリーンアップする必要があります。最新バージョンに移行すると問題はありませんが、ブランチ間で前後に切り替えると、キャッシュされたデータがすべて失われるのは恐ろしいことです。

関連情報