C++ ときどき ごはん、わりとてぃーぶれいく☆

Wonder Rabbit Projectのなかのひとのブログ。主にC++。

Android SDK/NDKことはじめ、archlinuxの場合

今週からAndroid開発講座も担当する事になったので、

とかしておこうかと。暢気な感じだけど、Javaを教えるとかC++を教えるとかJavaScriptを教えるとかって講座ではなくて(必要に応じてヘルプはするけど)、Androidアプリ開発の実習を行うプロジェクト演習の様な講座で、個人ないしグループで何らかのアプリ開発プロジェクトを立ち上げ、目標としてはPlayに登録してみようと云ったところ。講座としては私は学生たちのプロジェクト群をウマイこと軌道に乗る様に指導するって感じ(のハズ)なのです。

たぶんGitHubなりChiliProjectなりで公開開発すると思うので、面白いアプリができたり、プロジェクトが進んだら紹介したいと思います。

さて、一応せんせーも開発環境くらいは整えて措く訳ですが、Eclipseなんて使いたくなかとよ、と云う訳でちょいちょい調べると、

とか記事があって一安心。まあ、不自由なWindowsでEclipseが無いと精神的に樹海へ旅立ちかねない学生は、

あたりの記事を見ながら環境整備して貰ったらいいかと思う。Android開発講座に参加する時点で既に環境整備くらいは終わってると思うけど・w・;

ちなみにAndroid SDK, Android NDKは、

に公式に配置されているのだけど、幸いな事に私はarchlinuxを使っているので例によってAURにそれっぽいパッケージが先人によりメンテナンスされていた。archlinuxとメンテナーさんにありがとう。

Android SDK r18は執筆時点の最新版。新しいリビジョンが出ると別のパッケージがメンテナンスされるかもしれないので注意。SDKをAURから入れると関連パッケージとしてandroid-udevとandroid-sdk-platform-toolsも入れるといいよってお勧めされる。

yaourt -S --noconfirm android-sdk
yaourt -S --noconfirm android-udev

AURからandroid-udevをインストールした後、「使いたいユーザーをadbusersグループに追加してね」とか出てるので追加しとく。例えばユーザーusagiをadbusersに追加するなら

gpasswd -a usagi adbusers

とか。それからplatform toolsも忘れずに入れて措く。

yaourt -S --noconfirm android-sdk

当然C++の為にNDKも入れて措く。…しかしパッケージが2つあり、一方に恐ろしい事が書いてある。"with enabled support of C++ exceptions, RTTI and Standard C++ Library"と云うことは、この記述が無い方のパッケージはC++の例外/RTTI/標準ライブラリーが含まれないと云う事だろうか。gasとかCしか使わないならそっち、C++erはwithなんちゃらとあるcrystaxを使えば良いと云う事かしら。RTTIはともかく例外と標準ライブラリーが無いと云うのはどうなのよ状態になるのでcrystaxを入れて措くのが…と思ったら、

Comment by: Jetbeard on Sun, 06 Nov 2011 11:23:19 +0000

The official description says "Starting from NDK r5, Google added support of C++ exceptions, RTTI and STL to the official NDK." -- so the package description is a bit off.

だそうで、android-ndk r8-1(執筆時点)では特に恐れる事は無くC++のそれら、例外/RTTI/標準ライブラリは公式パッケージでもサポートされたらしい。一安心してandroid-ndkを入れる事にする。

yaourt -S --noconfirm android-ndk

84.2MB…、まあそんなもんよね・w・;

AURからのインストールが終わると"You need to source /etc/profile or relogin to add the Android NDK tools to your path."だそうなので、

source /etc/profile

これで準備完了☆(ゝω・)vキャピ
ちなみにSDKは/opt/android-sdk、NDKは/opt/android-ndkに入ります。

さてさて、今週中に受講する学生さんたちにはプロジェクトを立てて目標成果物をイメージであれ想定できるところまでわいわい進めて貰いたいな。