繁体   English   中英

使用ndk-build all构建一个预构建的静态库

[英]building a prebuilt static library with ndk-build all

我在构建静态库的ndk-build脚本中遇到问题。

问题在于此脚本已包含在应用程序的较大构建脚本中,该脚本通过ndk-build all调用

静态库的构建脚本如下所示:

# LoadBalancing-cpp

LOCAL_PATH := $(call my-dir)

all_static_libraries = common-cpp-static-prebuilt \
                       photon-cpp-static-prebuilt

lib_suffix := ${APP_OPTIM}_android_${APP_ABI}

lib_loadbalancing_cpp_static_name := loadbalancing-cpp-prebuilt-static_${lib_suffix}

include $(CLEAR_VARS)
LOCAL_MODULE            := loadbalancing-cpp-static-prebuilt
LOCAL_SRC_FILES         := lib$(lib_loadbalancing_cpp_static_name).a
LOCAL_STATIC_LIBRARIES  := $(all_static_libraries)
include $(PREBUILT_STATIC_LIBRARY)

$(call import-module,common-cpp-prebuilt)
$(call import-module,photon-cpp-prebuilt)

问题是,构建静态库需要LOCAL_SRC_FILES指向单个值(库的路径),但是在这种情况下使用ndk-build all调用时,它将包含多个值(因为lib_suffix将指向所有可用值)架构)。

有没有一种方法可以使用ndk-build all来构建此文件?

您可以使用由ndk-build管理的TARGET_ARCH变量:

lib_suffix := $(APP_OPTIM)_android_$(TARGET_ARCH)

... 等等。

本质上,ndk-build会多次“调用”您的Android.mk文件,每次都以不同的方式设置TARGET_ARCH变量。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM