スタティック ライブラリをビルドする 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 を使用してこのファイルをビルドする方法はありますか?