2016年3月27日日曜日

edisonのカスタムビルドをしてみよう! その弐


前回の続き・・・

前回はとりあえず一回目のビルドをしたところで終わりました。今回はそれの続きです。

今回は「menuconfig」を使って編集します。

bitbake virtual/kernel -c menuconfig
※Xwindowが必要です。

設定するときは、方向キーで移動してスペースで選択という手順です。
次に設定ファイルをビルドするためのところに送ります。

cp /home/ユーザーの名前/edison-src/out/linux64/build/tmp/work/edison-poky-linux/linux-yocto/3.10.17-r0/linux-edison-standard-build/.config /home/ユーザーの名前/edison-src/meta-intel-edison/meta-intel-edison-bsp/recipes-kernel/linux/files/defconfig


cp /home/ユーザーの名前/edison-src/out/linux64/build/tmp/work/edison-poky-linux/linux-yocto/3.10.17-r0/linux-edison-standard-build/.config /home/ユーザーの名前/edison-src/meta-intel-edison/meta-intel-edison-bsp/recipes-kernel/linux/files/defconfig

次にカーネル設定を読み込みます

bitbake virtual/kernel -c configure -f -v

再ビルドします。今回は前回のものに少しモジュールが追加されるだけなのでさほど時間がかかりません。再ビルドのときは追加された部分だけビルドされます。

bitbake edison-image

そして、edisonに書き込むために必要なファイルを、書き込むファイルのあるフォルダに移す作業をします。
新たな端末を立ち上げ

cd home/ユーザーの名前/edison-src/meta-intel-edison/utils/flash/

./postBuild.sh /home/ryo/edison-src/out/linux64/build/

その後、書き込むためのフォルダに移動して、edison本体に書き込みます。

cd edison-src/build/toFlash

sudo ./flashall.sh

でいけるとおもいきや、自分はなぜかu-boot-envs/edison-blankcdc.binがないと言われたので、edison-srcの中から検索して探しだしてtoFlashフォルダーに投げ込み再ビルド。

しかし、今度は[./flashall.sh: 行 108: dfu-util: コマンドが見つかりません]と言われ、検索すると、どうもdfu-utilとかっていうやつがたりないとわかり、

sudo apt-get install dfu-util

をしてインストール。ようやく通りました。以下の文が出てきます。

ユーザーとかパソコンの名前:~/edison-src/build/toFlash$ ./flashall.sh
Using U-Boot target: edison-blankcdc
Now waiting for dfu device 8087:0a99
Please plug and reboot the board
Flashing IFWI
Flashing U-Boot
Flashing U-Boot Environment
Flashing U-Boot Environment Backup
Rebooting to apply partition changes
Now waiting for dfu device 8087:0a99
Flashing boot partition (kernel)
Flashing rootfs, (it can take up to 5 minutes... Please be patient)
Rebooting
U-boot & Kernel System Flash Success...
Your board needs to reboot to complete the flashing procedure, please do not unplug it for 2 minutes.

これで一応成功しているはずだったんですけど、自分はこの方法でやってみても全然書き込めてませんでした。
元々はVMwareでやってたので、あきらめて実装環境にファイルをコピーしたり、それでもだめで、実装環境でビルドしたりとかいろいろ試行錯誤をくりかえしたんですけどダメでした。

そこで、あきらめて友達にtoFlashフォルダを渡して他のedisonにwindowsで書き込んでもらうとなんと、ちゃんと書き込めてるではないか!!
なんでやっ!と思いながら自分もwindowsで試してみることに


windows側でやるには、ubuntuのパーティションからtoFlashのフォルダを出してやらなければいけなません。ubuntuのext4はwindowsだと見れません。また、日本語とかが含まれているフォルダにぶち込むのもダメです。まあ、確実なのはCドライブ直下やDドライブ直下ですかね。僕はDドライブ直下に置きました。

windowsでも、dfu-utilが必要なので、ここのサイトのフォーラムのmdmaさんのコメントのところにあるDropBoxからダウンロードしてきてください。
そして、それをtoFlashフォルダのなかに混ぜ込んで、「flashall.bat」を普通に実行すればあとはubuntuと同じです。

ちなみにintelの付属ソフトで書き込む場合はtoFlashフォルダの中の、「FlashEdison.json」を指定いてやればいいです。あんまり安定してなくて焼くのにエラー何回も出るのであんまりおすすめはしません。

何か疑問等ありましたら可能な範囲で答えるのでコメント欄にコメントお願いします。
また、間違い等があってもコメントで知らせていただけるとありがたいです。

P.S.
今回のビルドでは他のサイトを見ながらやっていて失敗をすることが多く割と遠回りで確実な方法をとっている部分が多いです。なのであくまでも初心者ががんばってやってみたものだと思って読んでいただければ幸いです。

2016/4/14 若干の修正

2016年3月23日水曜日

edisonのカスタムビルドをしてみる その壱

こんばんわ。

今回は、edisonのカスタムビルドをする必要がでてきたのでやり方についての自分へのメモを兼ねてまとめておきます。

ほぼこちらのサイト通りにやっています。先人の方に感謝。

自分の場合はubuntuの実装環境でも仮想環境でもどちらでも成功しています。なのでwindowsしかない方は仮想環境でも可能です。

当方のパソコンのスペック

ASUS K55A
core i7 3630qm
ram 8G
hdd 55G割り当て
ubuntu 14.04
VMware Workstation Player 12

ビルドするためのパッケージが30G以上必要とします。最低空き容量40G推奨!!

とりあえず必要なパッケージをインストールするところから

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

次にgitの設定

git config --global user.email "email"

git config --global user.name "name"
それからソースファイルのダウンロード

wget http://downloadmirror.intel.com/25028/eng/edison-src-ww25.5-15.tgz

そしてソースファイルを解凍する。

tar xvf edison-src-ww25.5-15.tgz

そしたら新たにつくられたフォルダに移動

cd edison-src

ビルド環境のセットアップのために

./meta-intel-edison/setup.sh


を実行する。

また、edison-src/out/linux64/build/confの中にあるlocal.confの

BB_NUMBER_THREADS = "8"

PARALLEL_MAKE = "-j 8

これの数字を使用しているCPUのコア数x2に変更してからビルドをするとかなり早くなるためこれは行うことを推奨します。

※追記 こちらのパソコンでこの設定にしたら途中でパソコンの電源が落ちていたのでコア数と同じ数(4)に変更しました。
そしてビルドディレクトリに移動

cd out/linux64 (64bitの場合で32bitなら「out/linux86」となる。以下出てくる場合も同じ)

シェルの環境設定をし

source poky/oe-init-build-env

そうすると

runqemu qemux64こちらも32bitならば「runqemu qemux86」)

を打ち込んでねと言ってくるので打ち込んであげる。

とりあえず一回ビルドしないとカスタム設定できないためとりあえずビルド

bitbake edison-image


これにはパソコンのスペックにもよりますが、自分は2,3時間かかるため気長に待ってください。また、途中で何度かダウンロードがあるため、ネット環境必須です。またwarningが多く出ますが、errorでなければスルーしておいて大丈夫です。

次回へ続く