我一直在为armeabi-v7a构建我们的Android应用程序。现在,为了添加对x86的支持,我扩展了Application.mk:
APP_ABI := armeabi-v7a x86我遇到的第一个问题是libvpx可以针对arm或x86进行配置:
$ ./libvpx/configure --target=armv7-android-gcc ...
OR
$ ./libvpx/configure --target=x86-android-gcc想知道如何处理多个平台。是否为两个平台创建了两个不同的libvpx目录,并使用Android.mk中的if-then-else逻辑来选择正确的目录?有没有更好的方法?
发布于 2014-11-18 04:26:19
是的,差不多吧。如果您将构建产品(由make install生成)存储在根据android ABI命名的并行目录中,则可以简化从Android.mk文件中使用它的过程,如下所示:
include $(CLEAR_VARS)
LOCAL_MODULE := libvpx
LOCAL_EXPORT_C_INCLUDES := $(LOCAL_PATH)/libvpx/$(TARGET_ARCH_ABI)/include
LOCAL_SRC_FILES := libvpx/$(TARGET_ARCH_ABI)/lib/libvpx.a
include $(PREBUILT_STATIC_LIBRARY)由于公共头文件可能(应该)没有任何特定于arch的东西,所以您也应该能够共享它们的一个副本,而不是每个arch都有一个副本。
https://stackoverflow.com/questions/26981026
复制相似问题