CLOVER🍀

That was when it all began.

64bit LinuxでAndroidエミュレータを起動する

晴れてUbuntuに移行したので、CentOSでできなかったAndroidエミュレータを起動してみましょう♪

で、結果は

…なんですと?エラーの内容こそCentOSと違いますが、失敗してるじゃん。それにしても、よくわからないエラーを吐いてますね。emulatorがないと言ってる…?

とりあえず、ファイルはあるので直接実行してみます。

$ emulator 
bash: /usr/local/android-sdk-linux_x86/tools/emulator: そのようなファイルやディレクトリはありません

…これは、どういうことか?ちょっとファイル自体を調べてみますか。

$ file /usr/local/android-sdk-linux_x86/tools/emulator 
/usr/local/android-sdk-linux_x86/tools/emulator: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.8, not stripped

ELF 32-bit LSB executable

32bit!!これか、原因は〜。そういえば、確かにSDKには32bit版と64bit版の区別がなかったなぁ。

軽く調べてみると、世間の方々もこれでハマっているらしく、というかLinuxでやるなら32bitでやった方がいいよ的な記事まで見受けられます。

もうちょい調べてみると、32bit環境のライブラリを引っ張ってくればよいということがわかったので、apt-getでインストール。

$ sudo apt-get install ia32-libs
パッケージリストを読み込んでいます... 完了
依存関係ツリーを作成しています                
状態情報を読み取っています... 完了
以下の特別パッケージがインストールされます:
  lib32asound2 lib32bz2-1.0 lib32gcc1 lib32ncurses5 lib32ncursesw5
  lib32stdc++6 lib32v4l-0 lib32z1 libc6-i386
提案パッケージ:
  lib32asound2-plugins
以下のパッケージが新たにインストールされます:
  ia32-libs lib32asound2 lib32bz2-1.0 lib32gcc1 lib32ncurses5 lib32ncursesw5
  lib32stdc++6 lib32v4l-0 lib32z1 libc6-i386
アップグレード: 0 個、新規インストール: 10 個、削除: 0 個、保留: 162 個。
65.2 MB のアーカイブを取得する必要があります。
この操作後に追加で 212 MB のディスク容量が消費されます。
続行しますか [Y/n]? y

ひとしきり待った後、インストール完了を見て再度エミュレータを起動。

出たー!!