以下の内容はhttps://mickey-happygolucky.hatenablog.com/entry/2025/11/30/120359より取得しました。


YoctoProject bitbake-setupの基本

はじめに

YoctoProject bitbake-setupを試すの続き。

bitbake-setupを理解する上で必要となる基本的な要素について調べる。

基本構造

bitbake-setupで管理されるワークスペースは以下の様な構造になっている。

Top Directory
├── Site Configuration File
├── Setup 1/
├── Setup 2/
...

Top Directory

Top Directoryはbitbake-setupによって作成される作業場所の文字通りルートとなるディレクトリ。

Top Directoryには以下のものが存在する

  • Site Configuration File
  • 1つ以上のSetup

Site Configuration File

site.confという名前のファイルで、Top Directoryには1つ存在する。 これはbitbakeで参照されるsite.confと同じもので、すべてのSetupで同じものが参照される。

このファイルには使用するビルド環境の固有のプロキシ設定などワークスペース全体で共有したい設定を記述しておく。

Setup

bitbake-setup initで作成されたディレクトリで、実際のビルドに使用するメタデータやビルド環境を保持する。 つまり、Setup = BitBakeビルド環境 という対応づけとなる。

同じTop Directoryに対してbitbake initは複数回実行可能となっている。

Setupには以下のものが含まれている。

  • BitBake Build
  • Specific Configuration
  • Sources

BitBake Build

buildという名前のディレクトリで、BitBakeで使用されるビルドディレクトリ。

従来のビルドディレクトリと同等のものとなっており、conf/local.confconf/bblayers.confおよび、ビルド結果の生成物などが格納される。

Specific Configuration

configという名前のディレクトリでbitbake-setupが参照するための設定ファイルが格納される。

Sources

layersという名前のディレクトリで、ダウンロードされたbitbakeおよびレイヤのリポジトリが格納される。

bitbake-setupで管理される以外のレイヤもここに格納する。

作成された環境との対比

実際に作成された環境は以下のようになっている。上記の用語との対比は以下のようになる。

bitbake-builds/       => Top Directory
├── poky-whinlatter/  => Setup
│   ├── build/        => BitBake Build
│   ├── config/       => Specific Configuration
│   └── layers/       => Sources
└── site.conf         => Site Configuration File

bitbake-setupの設定

bitbake-setupの設定にはコマンドの振る舞いを設定するためのSettingsと、 bitbake-setupが環境を作成するために参照するConfigurationに分けることができる。

Settings

settings.confというファイルでINIファイル形式のテキストで記述する。

Top Directory毎に作成(Local settings)することもできるし、~/.config/bitbake-setup/settings.confのようにホームディレクトリにグローバルな設定として作成(Global settings)することもできる。

bitbake-setupのコマンドラインの引数で指定することもできる。

参照される順序としては以下のようになっている。

  1. Global settings
  2. Local settings
  3. コマンドライン引数

Configuration

Configurationには以下の2つがある。

  • Generic Configuration
  • Specific Configuration

Generic Configuration

Setupを作成するために参照されるファイルで、JSON形式で記述されている。 bitbake-setup initはGeneric Configurationを元にプロンプトを表示している。

  • 拡張子は.conf.json
  • Registoryに保存されている

bitbake-setup initはRegistoryから.conf.jsonの拡張子のファイルを探し設定を開始する。

bitbakeリポジトリではdefault-registoryに、デフォルトで使用可能なGeneric Configurationを提供している。 また、RegistoryはSettingsにより変更することもできる。

Specific Configuration

Setup毎に保存されるConfigurationで、Setup作成時に選択されたGeneric Configurationからの設定内容と、 その際にダウンロードされたSourcesのリポジトリの実際のリビジョンを格納している。

Registory

Generic Configurationを保存する場所の事で、ローカルストレージ上に存在しても良いし Webなどのネットワーク上に存在しても良い。

Registoryは以下のいづれかで指定することができる。

まとめ

bitbake-setupを理解する上で必要となる基本的な要素について調べた。

重要な項目は以下の3つ

  • Setup
  • Generic Configuration
  • Registory



以上の内容はhttps://mickey-happygolucky.hatenablog.com/entry/2025/11/30/120359より取得しました。
このページはhttp://font.textar.tv/のウェブフォントを使用してます

不具合報告/要望等はこちらへお願いします。
モバイルやる夫Viewer Ver0.14