「Android NDK入門/演習」サポートページ目次へ
このサイトの目次へ
「Android NDK入門」の内容をMacで実行する
工学社刊/清水美樹著「Android NDK入門/演習」」( ISBN978-4-7775-1671-1/ ISBN978-4-7775-1672-8)の、著者によるサポート内容をご紹介します。
本ページでは、「Android NDK入門」の内容を、Macで行う方法を説明します。
最終更新日:2012年3月21日
開発言語の準備
gcc, makeの準備
「Android NDK」によるネイティブ・アプリ開発では、Cのソース・コードをコンパイルして「ライブラリ」を作成します。それには、開発作業を行うOS中に「gcc」及び「make」が必要です。
Macでは、gccによる開発環境は、Appleの提供する開発ソフト「Xcode」とともに導入されます。
以前は、「Xcode」は導入しておいて、それは使わず、「ターミナル」からコマンド操作を行う、という方法で簡単に行きました。
ただし、最近Appleは「OS X/iOS専用の開発環境」に力を入れているようで、そのため、最近の「Xcode」では、コマンド操作による「gcc」開発がやりにくくなっています。
2012年3月時点では、本サイト内の文書「環境悪化?変化するMacの開発事情」に記した方法で、コマンド操作のできるgccやmake を準備できます。
Java, antの準備
「OS X」のバージョンが「Snow Leopard」であれば、Javaの開発環境・実行環境 、及びantは、最初からインストールされていますので、何もする必要はありません。
しかし、「Lion」では、Javaは最初からはインストールされていません。とはいえ、これも上記の文書に記した方法で(antも含め)簡単に準備できます。
以上の環境については、本書第5章に示すような環境変数の設定の必要はありません。設定しなくても、システムがちゃんとわかっているからです。
Android開発ツールの準備
SDKの準備
Android SDKの入手先は、本書第4-2節(84ページ)に示した通りです。簡単には、次のURL:のページです。
Android SDKのダウンロードページ
ダウンロードするのは、「android-sdk_バージョン番号-macosx.zip」です。2012年3月の時点では、「バージョン番号」は「r16」です。
Windows版と異なり、Mac版の「Android SDK」は、インストーラ形式ではありません。ただ、展開してフォルダにするのみです。圧縮形式で得られるアイコンを、ダブルクリックすれば展開されます。「android-sdk-macosx」という名前になります。
ダウンロードしたアイコンをダブルクリックして展開
SDKに関する環境変数の設定
展開したフォルダは、適当な場所に置きます。そして、そのフォルダのパスが本書第5-1節(122ページ)などにおける「ASDK_HOME」になります。
たとえば、ユーザのホームフォルダに、「java」というフォルダを作って、そこに置くとしましょう。(もちろん、本書第2-2節(32ページ)などにおいて「android-ndk」フォルダを置いた「myndk」フォルダにしても構いませんが、「SDK」自体はJavaによるAndroid開発を想定しているので、例は「java」フォルダにしてあります)
すると、 環境変数「ASDK_HOME」の設定は、リスト1のようになります。「ユーザー名」の部分にはみなさんのユーザー名を当てはめてください。
リスト1 環境変数ASDK_HOMEの設定
export ASDK_HOME=/Users/ユーザー名/java/android-sdk-macosx
Macで、コマンドシェル(コマンドを解釈してシステムに伝えるソフトウェア)は「bash」です。「bash」に内容をわかってもらうための書き方が、リスト1です。
「export」は、実は「コマンド」です。「環境変数の設定」とは、「環境変数はこのようにしなさい」とシステムに対して「命令」を与えることなのです。
さてこれをどこに書くか?それは、あとでまとめて行いましょう。
「AVDマネージャ」は直接開けない
MacのAndroid SDK上で、「SDKマネージャ」を開くには、「SDKフォルダ」のさらに「tools」フォルダの中にある「android」というアイコンをダブルクリックします。
すると、まず「ターミナル」が立ち上がり、しばらく待っていると、「SDKマネージャ」の画面が開きます。
しかし、「AVDマネージャ」を直接起動できるアイコンはありません。「AVDマネージャ」を開くには、Windows においても本書第4-4節(96ページ)で行ったように、「SDKマネージャ」のメニュー「Tools」から「Manage AVDs」を開くのが、最も簡単な方法と思われます。
NDKの準備と環境変数の設定
Android NDKの入手先も本書第2-2節(28ページ)に示してあります。簡単には、次のURLのページです。
Android NDKのダウンロードページ
ダウンロードするのは、「android-ndk-バージョン名-darwin-x86.tar.bz2」です。2012年3月の時点では、「バージョン番号」は「r7b」です。本書で用いていたバージョン「r7」からの、少し修正版です。
展開して適当な場所に置きます。その場所は、やはり本書第2-2節の通り、ホーム・フォルダの下の「myndk」フォルダにします。
すると、本書第5-1節(122ページ)などにおける環境変数「NDK_HOME」の設定は、リスト2のようになります。
リスト2 環境変数NDK_HOMEの設定
export NDK_HOME=/Users/ユーザー名/myndk/android-ndk-バージョン番号
環境変数PATHの設定
Macでは、gcc, Java, Antについては環境変数の設定は不要です。上記のAndroid SDKと、NDKについてのみ必要です。そこで、本書第5-1節(123ページ)で議論した「環境変数PATHの設定」は、リスト3のようになります。
リスト3 環境変数PATHの設定
export PATH=$PATH:$ASDK_HOME/tools:$ASDK_HOME/platform-tools:$NDK_HOME
リスト3において、さらに、bashに読ませる環境変数の書き方の特徴を挙げましょう。
まず、設定済みの環境変数を引用する場合は、頭に「$」をつけます。
また、パスの区切りは「 : (コロン)」です。
そして、OS XやLinuxにはあらかじめ「PATH」の値が設定されている事があるので、それを上書きしないように、「$PATH」を一度引用しておいて、そこに「 : 」記号をつけてつなげます。
「ターミナル」に設定
リスト1 からリスト3の設定は、Linuxなら、ファイル「.profile」に1行ずつ区切って書けば済みます。(またLinuxでは、ホームフォルダは「$HOME」で済みます)
しかし、MacではUNIX的な設定ファイルの扱いは面倒です。
そこで、Macの場合は、デスクトップ上で扱えるアプリ「ターミナル」において、「ウィンドウを開くときに実行するコマンド」の内容に指定するのです。
これは、「ターミナル」の「環境設定」画面で行えます。具体的な方法は、筆者が他にMacでの開発全般について解説したページをご参照ください。
ターミナルの環境設定で、起動時のコマンドに指定
ここでは、その作業を行うために、リスト1 からリスト3の環境変数の設定を、まとめて1つの文にします。そのためには、リスト1 からリスト3を、それぞれ「改行」を示すセミコロン「;」でつなげます。
さらに、「ターミナル」を開いたときの「作業場所」は、ユーザのホームフォルダになっています。そこで、ターミナルを開いたとき、リスト4のコマンドも実行されるようにします。
リスト4 ホームフォルダの下の「myndk」フォルダに移動
cd myndk
こうして全てのコマンドを、まとめて1つの文にします。(ユーザー名にそれぞれの具体名を入れるのを忘れないようにしましょう)
リスト5 環境変数の設定など、全てのコマンドをまとめて一つの文にする
export ASDK_HOME=/Users/ユーザー名/java/android-sdk-macosx;export NDK_HOME=/Users/ユーザー名/myndk/android-ndk-r7b;export PATH=$PATH:$ASDK_HOME/tools:$ASDK_HOME/platform-tools:$NDK_HOME;cd myndk
「ターミナルの環境設定」での設定欄が狭いので、リスト5は適当なテキスト・エディタに書いてみてから、間違いのないことを確認してその内容をコピーするとよいでしょう。(Macでプログラミングを行うには、プログラミング用途に作られたエディタを導入するほうがよいと思われますが、このような一時的な作業ならば「テキストエディット」でも十分かと思われます)。
「Android NDK入門/演習」サポートページ目次へ
このサイトの目次へ