NDK Android编译各种扩展文件



我想在我的Android项目中使用原生库,我尝试编译它们。我发现的错误是由不兼容的文件扩展名引起的。它们是.c .h .m4 .y和其他扩展名。

这是我 Android.mk 文件的一部分

LOCAL_PATH := $(call my-dir)
TARGET_ARCH_ABI := armeabi-v7a
include $(CLEAR_VARS)
LOCAL_LDLIBS := -llog
LOCAL_MODULE    := openssl-0.9.7m
FILE_LIST       := $(wildcard $(LOCAL_PATH)/$(LOCAL_MODULE))
LOCAL_SRC_FILES := $(FILE_LIST:$(LOCAL_PATH)/%=%)
include $(BUILD_SHARED_LIBRARY)
include $(CLEAR_VARS)
LOCAL_LDLIBS := -llog
LOCAL_MODULE    := pbc-0.5.12
FILE_LIST       := $(wildcard $(LOCAL_PATH)/$(LOCAL_MODULE))
LOCAL_SRC_FILES := $(FILE_LIST:$(LOCAL_PATH)/%=%)
include $(BUILD_SHARED_LIBRARY)
include $(CLEAR_VARS)
LOCAL_LDLIBS := -llog
LOCAL_MODULE    := libbswabe-0.9
FILE_LIST       := $(wildcard $(LOCAL_PATH)/$(LOCAL_MODULE))
LOCAL_SRC_FILES := $(FILE_LIST:$(LOCAL_PATH)/%=%)
include $(BUILD_SHARED_LIBRARY)
include $(CLEAR_VARS)
LOCAL_LDLIBS := -llog
LOCAL_MODULE    := gmp-5.0.2
FILE_LIST       := $(wildcard $(LOCAL_PATH)/$(LOCAL_MODULE))
LOCAL_SRC_FILES := $(FILE_LIST:$(LOCAL_PATH)/%=%)
include $(BUILD_SHARED_LIBRARY)
include $(CLEAR_VARS)
LOCAL_LDLIBS := -llog
LOCAL_MODULE    := libpbc
FILE_LIST       := $(wildcard $(LOCAL_PATH)/$(LOCAL_MODULE))
LOCAL_SRC_FILES := $(FILE_LIST:$(LOCAL_PATH)/%=%)
include $(BUILD_SHARED_LIBRARY)
include $(CLEAR_VARS)
LOCAL_LDLIBS := -llog
LOCAL_MODULE    := m4-1.4.16
FILE_LIST       := $(wildcard $(LOCAL_PATH)/$(LOCAL_MODULE))
LOCAL_SRC_FILES := $(FILE_LIST:$(LOCAL_PATH)/%=%)
include $(BUILD_SHARED_LIBRARY)
include $(CLEAR_VARS)
LOCAL_LDLIBS := -llog
LOCAL_MODULE    := cpabe-0.11
FILE_LIST       := $(wildcard $(LOCAL_PATH)/$(LOCAL_MODULE))
LOCAL_SRC_FILES := $(FILE_LIST:$(LOCAL_PATH)/%=%)
include $(BUILD_SHARED_LIBRARY)
include $(CLEAR_VARS)
# LOCAL_LDLIBS := -llog
LOCAL_MODULE    := PHRapp_Login_JNI
FILE_LIST       := $(wildcard $(LOCAL_PATH)/$(LOCAL_MODULE))
LOCAL_SRC_FILES := $(FILE_LIST:$(LOCAL_PATH)/%=%)
include $(BUILD_STATIC_LIBRARY)

当我在 Eclipse 中编译时,它警告我在 Android.mk 中描述的模块存在不支持的源文件扩展名。我应该如何做解决方案?

使用 $wildcard 列出 lib build 目录中的所有文件不是一个好的做法。当您使用如此多的开源库时,为 NDK 准备和使用独立工具链要容易得多,而不是即兴创作Android.mk

最新更新