eclipse + ADT-21.0.x + Android Native Development Tools(r8d)
Android Terminal Emulator
公式のものでは無く、ユーザーが作成した物です。Google Playに登録されているので、ありがたく使わせていただきましょう。
機能不満が出たら自作するという事で…。
そして、こういった物があると、ARMネイティブの開発環境が欲しくなってしまうわけです。
Androidが公式に動くとしているプラットホームはARM(v5以降)、MIPS、x86となっていますが、シェアの大半はARMv7とされています。他のアーキティクチャをクロスコンパイルするにしてもARMネイティブの開発環境を導入することにマイナス要素はありません。
当然ながら、ARM社も独自にコミュニティを立ち上げていて、以下のような物が存在します。
Google AndroidとChrome OSサポート – ARM
http://www.arm.com/ja/community/software-enablement/google/index.php
AndroidソリューションセンターでARMのあらましを参照したら、Advanced Application Developmentへ、
Advanced Application Development – ARM
http://www.arm.com/ja/community/software-enablement/google/solution-center-android/getting-started-test-19429.php
DS-5 CEというネイティブ開発ツールで次のレベルへ、という感じの出だしで始まっていますので、これを入手しましょう。
DS-5 コミュニティエディション – ARM
http://www.arm.com/ja/products/tools/software-tools/ds-5/community-edition/index.php
小規模中小や個人は、フリーのコミュニティエディションが使えるようです。年間売り上げも関わってくるのですが、まずは関係ないという事で導入しましょう。
DS-5 CEインストール – ARM
http://www.arm.com/ja/products/tools/software-tools/ds-5/community-edition/ds-5-community-edition-install.php
Android ADT Bundleのeclipseのバージョンは3.8、JDKは7とバージョンが上がってしまっていますが、物は試しで、このまま導入してしまいます。
統合するための、eclipseのpluginについては後述します。
Android NDK | Android Developers
http://developer.android.com/tools/sdk/ndk/index.html
ダウンロードを開始すると、ページの項目がInstalling the NDKまでスクロールします。
ダウンロードしたファイルを解凍とあるので、Android ADT Bundleのフォルダへ解凍することにします。
ふと中身を調べてみようと思い立ち、
どうやら解凍するだけで必要ファイルは全てそろい、コマンドプロンプトなら、NDKルートのndk-build.cmdを実行すれば環境をセットアップし、プロジェクトをビルドしてくれます。
……、ここで、DS5要らないじゃんなどと思ってしまう自分は、恐らく俄かなのでしょう;p
eclipseと連携するためのNDK Pluginは、eclipse のHelpメニューのInstall New Softwareから追加可能です。
このように、Android Developer Tools Update Siteのリポジトリを選択
出てきたリストからNDKを選択するわけですが、Developer Toolsも更新があるようなのでチェックを入れておきます。
ライセンスおよび使用許諾に合意しするとインストールが始まります。
そして…、
リポジトリのエラーで怒られました;p。
どうやらリポジトリにファイルが無いというよりアクセスが出来ていなかったようで、
Using the NDK plugin – Android Tools Project Site
http://tools.android.com/recent/usingthendkplugin
ここに書かれている通り、リポジトリはhttpアクセスではなくhttpsでアクセスしないといけません。"Available Software Sites"のダイアログから設定を編集します。
ついでにUsing NDK Pluginのページにある通り、CDT(C/C++ Development Tools)のリポジトリもここで追加しましょう。CDTの解説がデッドリンクになっているのでリポジトリ設定を乗せておきます。エラーが出る場合はここで不要なサイトのチェックを外します。
Name: CDT
Location: http://download.eclipse.org/tools/cdt/releases/indigo
以上で登録します。
先ほどのNDK Pluginに加えて、CDT Main Featuresも選択し、インストールを行います。
インストールが終了したら、先ほどのページの指示通りNDKのパスを設定します。SDKはそもそもバンドルされているため、設定は済んでいます。
これでネイティブのビルド環境が整いました。
確認のためにビルドを行います。
android-ndk-r8cのsamplesからHelloJniのクローンを作成して作業することにします。
FileメニューからImportを選択、画像のようにインポート設定を行います。
これで自分のワークスペースにHello jniの複製が出来上がりました。
サンプルを元に、色々と弄り倒してみるのもいいでしょう。
なお、このままの状態で、cやc++のソースコードを参照すると、コードエディタの構文チェック機構でSyntacs Errorが出ます。修正方法は、Project Explorerからプロジェクトのポップアップメニューを出し、Android Tools > Add Native Support…を実行する。すると、プロジェクトが作り出すモジュール名を指定するダイアログが現れるので、これを設定すると、ネイティブライブラリを出力するプロジェクトが出来上がる。これは1からプロジェクトを作成しても同様です。
では、さっそく実行してみますが、今回は前回の反省を踏まえ、AVDでNexus One相当のデバイスを構成しました。
スクリーンショットを考えるとこれ位が妥当です。実機でこの手の小さなアプリのテストをすると、あとで削除するのが大変なので、手軽に消去できる仮想端末はやはり必要です。
ツールバーのDebugからプロジェクトを選択すると、Native部分のコードがコンパイルされ、端末にパッケージが転送され、実行されます。デバッガを停止させると端末側のアプリも止まります。
以上でeclipse + ADT + NDKの環境が整いました。
次回はこれに、ARM社のDS-5 CEを加えて、ARMプロセッサの緻密なデバッキングを行えるようにします。
ディスカッション
コメント一覧
まだ、コメントがありません