-
Notifications
You must be signed in to change notification settings - Fork 2
Build and Bitbake Tips
Yocto のビルド (bitbake) を行う時にはビルド対象のレイヤを読み込むディレクトリを <builddir>/conf/bblayers.conf ファイルで指定、ビルド対象とするものや設定などは <builddir>/conf/local.conf ファイルで指定する。基本的には必要なリポジトリをクローン、チェックアウトもしくはダウンロードして展開やパッチの適用を済ませた上で、bblayers.conf と local.conf の設定を書き換えてビルドするだけ。
bblayers.conf と local.conf のテンプレートは開発ボード毎に、meta-renesas リポジトリに用意されている のでそれを元に書き換えることになる。
ビルドするためのレシピは meta-browser リポジトリに入っている。 手順についてもボードごとにそちらの Wiki に説明があるのでそれを参照する。
ビルドするときに気をつけるポイント:
- SoC、ボード、BSP (Yocto ver.) など毎に分けてビルドするので適切にディレクトリ管理
- ターゲットとする BSP やブラウザバージョンのブランチ、コミットになっていることを確認
- ドライバは別途配布されているバイナリをダウンロードして入れる必要があることが多い
実機上のターミナルなら単に firefox
として起動できる。SSH などリモートコンソールで操作しているときは環境変数を指定して起動する必要があることに注意:
# WAYLAND_DISPLAY=wayland-0 firefox
コマンドラインオプションは MDN のドキュメントを参照。
meta-nodejs リポジトリをクローン:
git clone https://github.com/imyller/meta-nodejs.git
build/conf/bblayers.conf に先ほど clone した meta-nodejs を追加する:
BBLAYERS += " ${TOPDIR}/../meta-nodejs "
build/conf/local.conf に nodejs を追加しその設定も指定する (バージョンは必要なものを指定すること):
# Install Node.js
IMAGE_INSTALL_append = " nodejs nodejs-npm "
PACKAGECONFIG_append_pn-nodejs = " zlib openssl "
PREFERRED_VERSION_nodejs = "6%"
build/conf/local.conf に追加するだけで良い:
IMAGE_INSTALL_append = " packagegroup-core-buildessential "
IMAGE_INSTALL_append = " curl git "
bblayers.conf や local.conf を書き換えたらビルドする:
# シェル環境をセットアップしてビルドディレクトリに移動:
source poky/oe-init-build-env
# ビルド開始
bitbake core-image-webton
$ bitbake -e package-name
$ bitbake -c listtasks package-name
変更点を管理しづらくなるので多用は禁物だが、ちょっとした実験には便利。
$ bitbake -c devshell package-name
(自動的にソースディレクトリに入るので編集する)
$ exit
$ bitbake -f -c compile package-name
$ bitbake package-name
tmp/deply/ 以下にできるパッケージを実機にインストールする。