ANDROID_NDK_ROOTの設定について

どうも ANDROID_NDK_ROOT の設定に困る。
というのも、cygwin形式パスと、Windows形式パスと2種類それぞれ期待されている節があるからだ。

Windows形式を期待

VS-Androidは 環境変数 ANDROID_NDK_ROOT にWindows形式のパスを期待しているようだ.
仮にcygwin形式を設定しておくと、ビルドができなくなる。
正しい設定にしろ、見直せといってくる。

cygwin形式を期待

ndk-gdb は間違いなくcygwin形式を期待している。
ANDROID_NDK_ROOTをWindows形式で設定している場合、ndk-gdbを起動すると以下のようなメッセージが出てくる。

awk: fatal: can't open source file
`/cygdrive/d/eclipse/workspace/test/D:android-ndk-r6
/build/awk/check-awk.awk' for reading (No such file or directory)
ERROR: Could not run 'awk' command. Do you have it installed properly?

解決方法

ネイティブで書きたい人(自分とか)の場合、VisualStudioも使いたい、gdbも使いたいと欲張っていきたいです。
これら2点を解決する方法として、自分では以下の方法で対処しました。

  1. Windowsの環境変数 ANDROID_NDK_ROOTにはWindows形式で設定
    1. VisualStudio(VS-Android)で使うにはこのほうがいい
  2. cygwinの環境では、ホームディレクトリの .bashrc を編集
    1. このファイルの末尾に、以下のように記述して、環境変数を上書きにします。
export ANDROID_NDK_ROOT=/cygdrive/d/Android/android-ndk-r6b

おまけ

いくつかの設定方法を試していたりすると、
今までに説明した症状に出会わないかもしれません。
それはきっとその作業の中で上記で説明した対処法にたどり着いている可能性があると思います。
(意識しないでうまくいっている環境に出会ってしまったので)

Android プログラミング
すらりんをフォローする
すらりん日記

コメント

タイトルとURLをコピーしました