Vagrant環境でのYocto Linuxのビルド
Ubuntu環境が手元になかったため、Vagrant環境にてビルドイメージを作成。以下作業メモ。
1. Vagrant環境の準備
VirtualBoxとVagrantをインストール
Downloads – Oracle VM VirtualBox
2. ubuntu 14.04 64bit版ゲスト環境の起動(ホストはMac OS Xを想定)
$ mkdir ubuntu-yocto$ cd mkdir ubuntu-yocto$ vagrant init ubuntu/trusty64$ vi Vagrantfileconfig.vm.provider "virtualbox" do |vb|# Customize the amount of memory on the VM:# Memory : 1Gvb.memory = "1024"end$ vagrant up
3. ゲスト環境へのログイン
$ vagrant ssh
4. swap領域のセットアップ
$ sudo dd if=/dev/zero of=/swapfile bs=1024 count=4M$ sudo chmod 600 /swapfile$ sudo mkswap /swapfile$ sudo swapon /swapfile$ sudo swapon -s$ sudo sh -c "echo '/swapfile none swap sw 0 0' >> /etc/fstab"
5. gitのセットアップ
$ git config --global user.email "foo@example.com"$ git config --global user.name "Your Name"
6. ビルドに必要なパッケージのインストール
$ sudo apt-get install build-essential git diffstat gawk chrpath texinfo libtool gcc-multilib
7. srcのダウンロードと展開
$ wget http://downloadmirror.intel.com/24389/eng/edison-src-rel1-maint-rel1-ww42-14.tgz
$ tar zxvf edison-src-rel1-maint-rel1-ww42-14.tgz$ cd edison-src
8. ビルド
$ mkdir /tmp/bitbake_download_dir$ mkdir /tmp/bitbake_sstate_dir$ ./device-software/setup.sh --dl_dir=/tmp/bitbake_download_dir --sstate_dir=/tmp/bitbake_sstate_dir --bb_number_thread=8 --parallel_make=8$ source poky/oe-init-build-env$ time bitbake edison-image
9. Edisonに書き込む準備
$ cd ..$ ./device-software/utils/flash/postBuild.sh$ cd build$ tar zcvf edison-yocto-linux.tar.gz toFlash/
このedison-yocto-linux.tar.gzをEdisonにイメージを書き込める環境に持って行き、flashall.batを実行して書き込み完了。
参考