2013/09/27

Android NDK で出力ディレクトリを libs 以外にする方法

Android NDK でデフォルトディレクトリを jni 以外にしてみたのは良いのですが、実行ファイルなのに libs ディレクトリに出力されるのはいかがなものかと名は体を表すべきなのです。
というわけで、libs ディレクトリ以外に出力する方法も書いておきます。

方法は簡単で、以下のように NDK_APP_DST_DIR に出力先のディレクトリを指定してやるだけです。

$ ndk-build NDK_APP_DST_DIR="${PWD}/out/\$(TARGET_ARCH_ABI)"

デフォルトだと、out/armeabi 以下に成果物が出力されます。

TARGET_ARCH_ABI の前の $ がエスケープされていることに注意してください。
TARGET_ARCH_ABI はターゲットアーキテクチャで、ビルドターゲットによって変わります。
つまり、このコマンドを実行した段階では展開してはいけません。
後展開するように、$ をエスケープしているわけです。

Windows の場合は以下のようになります。
> ndk-build.cmd NDK_APP_DST_DIR="%cd%/out/$(TARGET_ARCH_ABI)"

Windows の場合は $ が環境変数として展開されませんので、エスケープする必要はありません。


0 件のコメント: