GentooでGenymotionを利用する
友人の結婚式に参加したら、新幹線のホームの階段から落ちてションボリでした。
Androidの開発では、Intel製のシステムイメージを利用する方法がわりとメジャーなようですが、私の環境ではVirtualBoxとは同時に動作させられないということで、もうちょっと調べてみると、VirtualBoxでAndroidのイメージを動作させる、といった趣旨の記事がありました。
その記事で紹介されていたのはAndroVMというものでしたが、いまではこれはGenymotionというものになっているようでした。
Genymotionの導入(Macへの)については、こちらの記事が非常に詳しかったです。
Genymotion で Android の超爆速エミュレータ環境を構築する | アドカレ2013 : SP #6
Genymotion自体も、Windows/Mac/Linuxのマルチプラットフォーム対応なんですが、LinuxについてはUbuntu/Debianだけが公式にサポートされています。
ただ、私の環境はGentooなので、当然ながら公式にサポートされていません。他にも公式にサポートされていないディストリビューションで涙を流した方もいるかもしれませんので、動作させるために自分でやったことをメモっておきます。
準備
まずはVirtualBoxをインストールし、GenymotionからLinuxのバイナリをダウンロードします。
この辺はそれぞれのディストリビューションで異なると思いますので、それぞれで行ってください。Genymotionからのバイナリダウンロードには、Genymotionへのサインアップが必要になります。
Genymotionのインストール
ダウンロードしてきたバイナリを、仮にgenymotionとして、~/workに置いた、という前提で話を進めます。
以下のコマンドを実行することで、genymotionのあるディレクトリ/genymotionに、実行ファイルを含めた各種ファイルが展開されます。PATHに追加するかどうかはお好みだと思いますので、その辺は御自由にどうぞ。
$ chmod a+x genymotion $ ./genymotion Installing to folder [/home/derui/work/genymotion]. Are you sure [y/n] ? n - Trying to find VirtualBox toolset .................... OK (Valid version of VirtualBox found: 4.3.10r93012) - Removing old installation ............................ OK - Extracting files ..................................... OK (Extract into: [/home/derui/work/genymotion]) Installation done successfully. You can now use these tools from [/home/derui/work/genymotion]: - genymotion - genymotion-shell
あとは、genymotion/genymotionを起動すればいい・・・んですが、公式じゃない場合はこの辺で躓くはずです。私はこんな感じになりました。ちなみに私のデスクトップ環境はAwesomeWMで、GnomeとかKDEとかは一回も入れたことが無いような状態です。
$ ./genymotion/genymotion ./genymotion/genymotion: error while loading shared libraries: libgstapp-0.10.so.0: cannot open shared object file: No such file or director
lddで調べてみると、何個かshared object filesが欠けている状態でした。まぁ想定通りではありますが。
依存の解決編
ここからはとりあえずGentooの話になってしまうのでご了承下さい。まず困ったのが、上記のlibgstapp-0.10.soが64bit環境においてはどこのパッケージに入っているのかさっぱりわからない、ということでした。equeryしても出てこないのでマジで困りましたが、捜してみると、gst-plugins-baseというパッケージに入っていることがわかりました。
GenymotionはQTを利用して作成されているようで、どうもqt-gstreamerも必要そうな匂いがしましたので、こちらをemergeすることにしました。
$ sudo emerge qt-gstreamer
これがズバリでした。起動してからは、前述のサイトを参考にしてもらえればわかりやすいと思います。
以上、誰の役に立つかはわかりませんが、メモ書きでした。