Android ndk の例 android-ndk-r6b/samples/hello-jni をコンパイルしようとしていますが、うまくいきません。
私が得ているコンパイルエラーは次のとおりです。
$:/media/rober/android/android-ndk-r6b/samples/hello-jni$ ndk-build
Gdbserver : [arm-linux-androideabi-4.4.3] libs/armeabi/gdbserver
Gdbsetup : libs/armeabi/gdb.setup
Compile thumb : hello-jni <= hello-jni.c
/media/rober/android/android-ndk-r6b/samples/hello-jni/jni/hello-jni.c:17:20: error: string.h: No such file or directory
/media/rober/android/android-ndk-r6b/samples/hello-jni/jni/hello-jni.c:18:17: error: jni.h: No such file or directory
/media/rober/android/android-ndk-r6b/samples/hello-jni/jni/hello-jni.c:27: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'Java_com_example_hellojni_HelloJni_stringFromJNI'
make: *** [/media/rober/android/android-ndk-r6b/samples/hello-jni/obj/local/armeabi/objs-debug/hello-jni/hello-jni.o] Error 1
環境:
Ubuntu
$:/media/rober/android/android-ndk-r6b/samples/hello-jni$ lsb_release -a
LSB モジュールはありません。
ディストリビューター ID: Ubuntu
説明: Ubuntu 11.10
リリース: 11.10
コードネーム:オニリック
ジャワ
$:/media/rober/android/android-ndk-r6b/samples/hello-jni$ java -バージョン
Java バージョン「1.6.0_22」
Java(TM) SE ランタイム環境 (ビルド 1.6.0_22-b04)
Java HotSpot(TM) Server VM (ビルド 17.1-b03、混合モード)
作る
$:/media/rober/android/android-ndk-r6b/samples/hello-jni$ make -v
GNU メイク 3.81
Copyright (C) 2006 Free Software Foundation, Inc.
これはフリー ソフトウェアです。条件のコピーについてはソースを参照してください。
保証はありません。商品性や適合性のためでさえありません
特定の目的。
i686-pc-linux-gnu 用にビルドされたこのプログラム
AWK
$:/media/rober/android/android-ndk-r6b/samples/hello-jni$ awk -W バージョン
mawk 1.3.3 1996 年 11 月、Copyright (C) Michael D. Brennan
コンパイルされた制限:
最大NF 32767
sprintf バッファ 1020
アンドロイド
$:/media/rober/android/android-ndk-r6b/samples/hello-jni$ エクスポート | grep Android
宣言 -x ANDROID_HOME="/media/rober/android/android-sdk-linux_86"
宣言 -x ANDROID_NDK="/media/rober/android/android-ndk-r6b/"
宣言 -x ANDROID_NDK_ROOT="/media/rober/android/android-ndk-r6b/"
宣言 -x ANDROID_SDK_HOME="/media/rober/android/android-sdk-linux_86"
PATH (読みやすいように「\n」で区切られています)
$:/media/rober/android/android-ndk-r6b/samples/hello-jni$ エクスポート | grep パス | grep ビン
宣言 -x PATH="
/media/rober/dev/apache-ant-1.7.1/bin:
/media/rober/dev/apache-maven-3.0.3/bin:
/media/rober/android/android-sdk-linux_86/platform-tools:
/media/rober/android/android-sdk-linux_86/tools:
/media/rober/android/android-ndk-r6b/:
/usr/lib/lightdm/lightdm:
/usr/local/sbin:
/usr/ローカル/ビン:
/usr/sbin:
/usr/ビン:
/sbin:
/置き場:
/usr/ゲーム:
/media/rober/dev/jdk1.6.0_22/bin:
/media/rober/dev/apache-ant-1.7.1/bin:
/media/rober/dev/apache-maven-3.0.3/bin:
/media/rober/android/android-sdk-linux_86/platform-tools:
/media/rober/android/android-sdk-linux_86/tools:
/メディア/ロバー/アンドロイド/アンドロイド-ndk-r6b/
同じ ndk ディレクトリ構造内にある場合でも、string.h ファイルと jni.h ファイルを検索する場所を ndk に指示する環境変数または何らかの構成が欠落しているように感じますが、私は '何が起こっているのかよくわかりません。
あらゆる種類のヒントは大歓迎です:)