私は別のチップセット、すなわち、armeabi MIPS、およびx86サポートするためのネイティブコードをコンパイル横断するAndroid.mkを設定しようとしています。私は、私は別のチップセット用のソースコードをコンパイルするために、次のようにApplication.mkを設定することができます知っている:のAndroid NDKは:Android.mkにコンパイラアーキテクチャを取得するにはどのように動的に
APP_ABI := all
これは、すべてのチップセットのためのソースコードをコンパイルするには、Android-NDKのビルドスクリプトをトリガします。しかし、異なるチップセットでコンパイルされた異なる静的ライブラリの依存関係を探すためにAndroid.mkに動的に伝えたいと思います。
# Get the architecture info
ARCH := ????
include $(CLEAR_VARS)
LOCAL_MODULE:= mylib
LOCAL_SRC_FILES:= build/lib/libxxx_$(ARCH).a
LOCAL_EXPORT_C_INCLUDES := $(LOCAL_PATH)
include $(PREBUILT_STATIC_LIBRARY)
これは可能ですか?もしそうなら、どうすればよいのかアドバイスできますか?
Update: I tried something like this in Application.mk:
APP_ABI := armeabi armeabi-v7a mips x64
with Android.mk:
# Get the architecture info ARCH := $(APP_ABI) include $(CLEAR_VARS) LOCAL_MODULE:= mylib LOCAL_SRC_FILES:= build/lib/libxxx_$(ARCH).a LOCAL_EXPORT_C_INCLUDES := $(LOCAL_PATH) include $(PREBUILT_STATIC_LIBRARY)
but it errors with the following:
The LOCAL_SRC_FILES for a prebuilt static library should only contain one item
which makes sense. I want to pass APP_ABI := all in Application.mk and be able to dynamically reference it. Any ideas?
あなたはNDKや他のlibsを見れば、彼らは 'の#ifdefの__arm__'ような定義はなく、それが定義または標準化 – minsk
こんにちは、私はまったく同じことをしたいのWHERE私は確認していない使用しています。 Andorid.mkファイルの例を教えてください。どこにアプリケーションを置くのですか? – jeevs