2013年7月14日日曜日

Firefox OS for emulator をビルド

Firefox OS をビルドしてみた.エミュレータ用にだけど.Firefox OS を動作させられる端末を持ってないので,今回はエミュレータ向けにビルドした.環境は以下の通り.

  • VMware Player 5.0.2 build-1031769
  • Ubuntu 13.04
  • mem: 8 GB

ソースの取得

git でレポジトリを取ってくる.
ubuntu:m-sato% git clone git://github.com/mozilla-b2g/B2G.git

ビルドする端末の選択

以下のコマンドを実行すると,構成できる端末の一覧が表示される.
./config.sh
今回は,エミュレータ用に構成する.
./config.sh emulator
構成が 終わったら,ビルドの用意をする.Ubuntu 13.04 だと,GCCのバージョンが4.7になっている.Firefox OS は4.6で作られているので,ビルドする前に環境変数を指定する.
export CC=gc-4.6
export GXX=g++-4.6

ビルド

以下のコマンドでビルドする.
./build.sh
以下,エラーへの対処.

  • /usr/include/zconf.h が無い!と怒られる.以下で対応した.
    • % sudo ln -s /usr/include/x86_64-linux-gnu/zconf.h /usr/include/
  • /usr/bin/ld: cannot find -lX11 とか言われた.
    • % sudo apt-get install libx11-dev:i386
  • libGL.so のシンボリックリンクが無い?
    • % sudo ln -s /usr/lib/x86_64-linux-gnu/mesa/libGL.so.1 /usr/lib/x86_64-linux-gnu/mesa/libGL.so
    • stackoverflowのここを参考にする.(正直,最後のtarballの展開が何をやってるのか分かってない.)

ミュレータの起動

ビルドに成功したら,エミュレータを起動しよう!と言われる.ので,起動する.
./run-emulator.sh
もっさりしたエミュレータが起動する.

2013年7月10日水曜日

SDカードへのRAWアクセスの失敗

Android ICS のイメージをSDカードに書き込もうとしたら失敗した.

やりたかったのは,ここから取ってきたAndroid ICS 4.0.3 for ODROID-7 をSDカードに書き込むこと.ODROID-7は,Android開発者向け端末で,SDカードから起動する.このため,SDカードにAndroidのイメージを書き込めば,簡単に端末のOSを入れ替えられる.

そこで,Windows 7 マシンにUSB SDカードリーダ経由(これ)でmicro SDカードにAndroid ICS イメージを書き込む.書き込みには,上記リンクから取ってきたzipに格納されていた書き込み用のツールを使った.解凍して得られたファイル(odroid7.odt, ODROID_A_TF_Burner.exe)のうち,ODROID_A_TF_Burner.exeを起動したら,ドライブを選択して,書き込みできる.

ここで困ったのは,書き込もうとすると,「Cannot write image file.」とメッセージが表示されて書き込めなかったこと.調べると,どうも,USB SDカードリーダには,SDカードへのRAWアクセスができないものがあるらしい(同じく困ってる人).

しょうがないので,SDカードリーダが筐体に直接収まっているマシンにイメージを持ってきて,再度書き込みを試すと,書き込みに成功した.書き込み後,ODROID-7にSDカードを挿入して電源を入れると,Android lICSが起動した.

2013年7月2日火曜日

Xenのゲスト起動時にHAP (EPT/RVI) を無効にして起動する.

Shadow Page Table を使った実験をしたいのに,EPTが有効な状態で起動して困ったのでメモ.

/etc/xen/domain の中に,hap = 0 を追記して起動する.
Xen の起動時に設定するとか見た気がするけど,そんなことないかも.少なくとも私の環境では不可能だった.