EclipseからAndroid NDKサンプルプロジェクトをビルドして実行(Linux)

Eclipse から Android NDK サンプルプロジェクトをビルドして実行する。

前提

Java の開発環境が整っていること。

Ubuntu では Java はプリインされていたので、何もしてない。

Android SDK をダウンロード

http://developer.android.com/sdk/index.html

ダウンロードしたファイルは「adt-bundle-linux-x86.zip」

いつの間にかこんな便利なパッケージがリリースされてた。

Android SDK をインストール

解凍してパスを通しただけ。

何かもっとよい方法があるかも。

Eclipse + ADT plugin をインストール

こちらも、解凍してパスを通しただけ。

起動時のウィザードから Android SDK の場所を設定。

Android NDK をインストール

http://developer.android.com/tools/sdk/ndk/index.html

ダウンロードしたファイルは「android-ndk-r8c-linux-x86.tar.bz2」

解凍してパスを通しただけ。

Android NDK サンプルのビルドテスト

ここまでの確認を兼ねて、Android NDK サンプルのビルドテストする。

android-ndk/samples/bitmap-plasma を任意のフォルダにコピーしてビルド。

$ cd workspace/bitmap-plasma
$ nkd-build
Gdbserver      : [arm-linux-androideabi-4.6] libs/armeabi/gdbserver
Gdbsetup       : libs/armeabi/gdb.setup
Gdbserver      : [arm-linux-androideabi-4.6] libs/armeabi-v7a/gdbserver
Gdbsetup       : libs/armeabi-v7a/gdb.setup
"Compile thumb : plasma <= plasma.c
SharedLibrary  : libplasma.so
Install        : libplasma.so => libs/armeabi/libplasma.so
"Compile thumb : plasma <= plasma.c
SharedLibrary  : libplasma.so
Install        : libplasma.so => libs/armeabi-v7a/libplasma.so

$ nkd-build clean
Clean: plasma [armeabi]
Clean: stdc++ [armeabi]
Clean: plasma [armeabi-v7a]
Clean: stdc++ [armeabi-v7a]

$

ちゃんとビルド&クリーンできている模様。

Android SDK Tools をアップデート

ADT NDK Plugins を使うには、Android SDK Tools を 20.0.3 にアップデートしなければならないらしい。

アップデートされていない場合は、インストール後に警告ダイアログが表示される。

Eclipse に ADT NDK Plugins をインストール

[Help]→[Install New Software...]

Work with: https://dl-ssl.google.com/android/eclipse

  • Developer Tools
  • NDK Plugins

インストール後、Eclipse を再起動。


ADT NDK Plugins に NDK のパスを設定

[Window]→[Preferences]

これで Eclipse の設定は完了。

Eclipse から Android NDK サンプルプロジェクトをビルド

Select a wizard

Package Explorer→[New]→[Project...]

[Next >]


Import Projects

Root Directory: C:\android-ndk\samples\bitmap-plasma

  • [Copy projects into workspace]

[Finish]


Package Explorer→[bitmap-plasma]→[Android Tools]→[Add Native Support...]

Library Name: lib[BitmapPlasma].so

[Finish]


Android 端末を USB 接続して、デバッグ実行してみたら動いた。

おわりに

Windows より Ubuntu のほうがずっとずっと簡単だった。。