wonder gadget

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

Vagrant環境でのYocto Linuxのビルド

Ubuntu環境が手元になかったため、Vagrant環境にてビルドイメージを作成。以下作業メモ。

 

1. Vagrant環境の準備

VirtualBoxとVagrantをインストール

Downloads – Oracle VM VirtualBox

Download Vagrant - Vagrant

 

2. ubuntu 14.04 64bit版ゲスト環境の起動(ホストはMac OS Xを想定)

$ mkdir ubuntu-yocto
$ cd mkdir ubuntu-yocto
$ vagrant init ubuntu/trusty64
$ vi Vagrantfile
  config.vm.provider "virtualbox" do |vb|
     # Customize the amount of memory on the VM:
     # Memory : 1G
     vb.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を実行して書き込み完了。
 

参考