tizen.moe

tizen.moe

Tizen SDK付属のEmulatorイメージを作成する

コンソーシアムのフォーラムに投稿されていた内容が面白そうだったので試しました。

取り敢えず起動して操作できることは確認しています。ただ、wikiなどにそれらしき記述が無いのでこの方法がスタンダードなやり方かどうかはわかりかねます。。。

SDKが利用するOSイメージの保存先

emulator-managerのcustomを利用すると、別に保存したOSイメージを利用することができます。
f:id:moguriso:20130420142359p:plain
このOSイメージがどこにあるのかややこしいのですが、

 ~/tizen-sdkSDK保存先)/platforms/tizen2.0/emulator-images/default/x86-standard

 emulimg-2.0.x86

という名前で保存されています。私の環境では、emulator-managerのcustomでcreateし、BaseImageに上記のファイルを指定することで起動することを確認しました。

Emulator用のOSイメージの作成

公開されている最新snapshotからイメージを取得しなおして更新してみます。最新の環境は https://download.tizen.org/snapshots/2.0-emul/common/latest/images/EMULATOR-2.0/ で公開されています。tar.gzも公開されていますが、今回はEMULATOR-2.0.ksをダウンロードしてmicコマンドで自前で作成します。micでloopbackイメージを作成する場合のコマンドは下記の通りです。

$ sudo mic create loop ./EMULATOR-2.0.ks -o ./

途中、@BUILD_ID@が期待する値に変換されずにmicが失敗したため、下記のパッチをあてています。(普通に作成して4.9GB程度になります。HDDの空き容量にご注意下さい)

20,22c20,22
< repo --name=Tizen-base --baseurl=https://download.tizen.org/snapshots/2.0/common/@BUILD_ID@/repos/base/ia32/packages/ --ssl_verify=no
< repo --name=Tizen-main --baseurl=https://download.tizen.org/snapshots/2.0/common/@BUILD_ID@/repos/main/ia32/packages/ --save  --ssl_verify=no
< repo --name=Tizen-base-debug --baseurl=https://download.tizen.org/snapshots/2.0/common/@BUILD_ID@/repos/base/ia32/debug/ --ssl_verify=no
---
> repo --name=Tizen-base --baseurl=https://download.tizen.org/snapshots/2.0-emul/common/tizen-2.0-emul_20130415.1/repos/base/ia32/packages/ --ssl_verify=no
> repo --name=Tizen-main --baseurl=https://download.tizen.org/snapshots/2.0-emul/common/tizen-2.0-emul_20130415.1/repos/main/ia32/packages/ --save  --ssl_verify=no
> repo --name=Tizen-base-debug --baseurl=https://download.tizen.org/snapshots/2.0-emul/common/tizen-2.0-emul_20130415.1/repos/base/ia32/debug/ --ssl_verify=no

正常にmicが終了すると、platform.imgというファイルができます。このファイルはファイルシステムそのもので、emulimg-test.x86qemuのhddイメージ形式になっているため、qemu-imgを使ってqemuのimage形式に変換します。

$ qemu-img convert -f raw -O qcow2 platform.img platform.x86

これを元のパスにある emulimg-test.x86 と差し替えて、emulator-managerでcreateして動かすことで、micで独自に作成したものがEmulatorで起動することを確認出来ました。

実機を動かすスペースがない場合には便利かも知れません。