wonder gadget

ガジェットはインターネットの夢をみるか? Intel edisonを中心に IoT, MAKE, Physical Computingしていきます。

Intel Edison Yocto Linuxビルドイメージの作り方

 

 Intel Edison Board Support Package User Guide より


Intel® Edison BSP User Guide | Intel Communities

 

 

Yocto Projcet

Yocto Projectは Linuxベースのオープンソースプロジェクトで、embeded products向け。

標準的な Intel Edison Imageを作るにはいくつかのパッケージをダウンロード&インストールする必要あり。最新の Ubuntu Linuxであれば以下の手順にしたがって行うことが可能(他のディストリビューションの場合は多少の手直しが必要)。

※ファイルシステムが暗号化されていないこと、例えば eCryptFSなど

ビルド方法

1. 必須パッケージをインストール

# sudo apt-get install build-essential git diffstat gawk chrpath texinfo libtool gcc-multilib

2. BSPソースパッケージ edison-src.tgz をダウンロード。これは Yocto環境、 Edison要 YoctoレシピのフルパッケージでLinux kernel含む、ブートローダーなどすべての必要なパッケージのビルドイメージをビルドするためのもの。BSPソースパッケージをダウンロードしたらテンポラリディレクトリで解凍。

# tar xvf edison-src.tgz
# cd edison-src/

3. setup.shスクリプトを使い、Edison用ビルド環境をイニシャライズ。--dl_dir, --sstate_dirオプションを使ってダウンロード、ビルドキャッシュ(sstate)ディレクトリをデフォルトから変更可能。
これを使うとビルド環境間でデータをシェアして、ビルドとダウンロード時間の短縮が可能。

# ./device-software/setup.sh --dl_dir=/path/bitbake_download_dir –-sstate_dir=/path/bitbake_sstate_dir

4. sourceコマンドでシェル環境を設定。コマンド実行後、ディレクトリはedison-src/buildフォルダーに変更

# source poky/oe-init-build-env

5. 準備完了、あとはbitbakeコマンドを実行してフル Edison imageを作るだけ。

# bitbake edison-image

ホストによるが、すべてのパッケージをスクラッチからビルドすると5~6時間かかる。変更時は環境にもよるがもっと短時間でビルド可能。bitbakeプロセスが完了するとフラッシュ用イメージはedison-src/build/tmp/deploy/images に格納される。フラッシュ手順を簡単化するため、以下のスクリプトを実行して必要なファイルを build/toFlashにコピーする。

./edison-src/device-software/utils/flash/postBuild.sh

これでフラッシュ用イメージの準備が整った。フラッシュの手順は Intel® Edison Quick Start Guide for details on the flashing procedure を参照のこと。