を.CPP .Cソースをコンパイルしなくなります。Android.mk私はうまく私のNDKのCコードをコンパイルAndroid.mkファイル持って
LOCAL_PATH := $(call my-dir)
include $(CLEAR_VARS)
LOCAL_MODULE := galib
LOCAL_SRC_FILES := galib.c tables-lr35-contam.c tables-lr35-perf.c
LOCAL_CFLAGS := -DTARGET_ANDROID=1
LOCAL_LDLIBS := -L$(SYSROOT)/usr/lib -llog
include $(BUILD_SHARED_LIBRARY)
を私が最初のソースgalib.cppを呼び出すしたいと思いますこれはWPF環境でコンパイルするときに必要な名前なので、.cの代わりに.cです。これは本当にCコードですが、DLLを作成するには、__declspec(dllexport)の処理を適切に行うために.cppという名前を付ける必要があります。私はそれをgalib.cpp名前を変更し、同じことを言うとAndroidのためにそれを構築しようとするの.mkファイルを変更したときに
はしかし、私はエラーを取得する:
$ ndk-build
make: *** No rule to make target `/cygdrive/c/apk/adev/android/etold/jni/galib.c',
...needed by `/cygdrive/c/apk/adev/android/etold/obj/local/armeabi/objs/galib/galib.o'. Stop.
それはまだ望んでいるかのように。 cファイルを何らかの理由で削除します。また、 "ndk-build -B"を試してみましたが、.cビルドから何か残っているものもありますが、同じエラーが発生します。どんな考え?ありがとう!
これはあなたに役立つと思います:: http://hashspeaks.wordpress.com/2010/01/27/android-mk-documentation/ –
http://developer.android.com/sdk/ndk/overview。 html –
私はすでにこれを見ていたので、.cppとLOCAL_SRC_FILESの名前を変更するだけでした。しかし、私はそれを再度読んで、LOCAL_CPP_EXTENSIONについて見たので、拡張子が.cppであり、それが助けにならないと明示的に言ってみました。私は例として示すように.cxxを試しましたが、 "サポートされていないソースファイルの拡張子"エラーが表示されます。多分抵抗は無益です。 :-) –