Android — Сборка аудио обработки Little Endian SDK с NDK

Я пытаюсь использовать ndk-build использовать собственный код для обработки аудио из Little Endian в приложении для Android (у меня еще нет JNI).

Когда я выполнил ndk-build в jni dir, я получил ($ USER_PATH — путь к каталогу на моем компьютере):

Android NDK: WARNING: Rebuilding libc++ libraries from sources!
Android NDK: You might want to use $NDK/build/tools/build-cxx-stl.sh --stl=libc++
Android NDK: in order to build prebuilt versions to speed up your builds!
Android NDK: ERROR:$USER_PATH/android-ndk-r10/sources/android/compiler-rt/Android.mk:compiler_rt_shared: LOCAL_SRC_FILES points to a missing file
Android NDK: $USER_PATH/Android/android-ndk-r10/sources/android/compiler-rt/libs/armeabi/libcompiler_rt_shared.so exists  or that its path is correct
$USER_PATH/android-ndk-r10/build/core/prebuilt-library.mk:45: *** Android NDK: Aborting    .  Stop.

Я видел, что это из-за PREBUILT_STATIC_LIBRARY, который указывает на отсутствующие файлы.

Как я могу решить это?

Структура каталогов:
введите описание изображения здесь

Есть файлы .mk:

Android.mk

MY_LOCAL_PATH := $(call my-dir)

ifndef LE_SDK_PATH
LE_SDK_PATH := $(call my-dir)
endif

include $(MY_LOCAL_PATH)/le_audioio.mk
include $(MY_LOCAL_PATH)/le_utility.mk

LOCAL_PATH := ${MY_LOCAL_PATH}
include $(CLEAR_VARS)

LOCAL_MODULE           := little-endian
LOCAL_STATIC_LIBRARIES := le_audioio le_utility

include $(BUILD_SHARED_LIBRARY)

Application.mk

APP_PLATFORM := android-14
APP_STL      := c++_static
APP_ABI      := armeabi armeabi-v7a x86
APP_OPTIM    := release
APP_CFLAGS   += -g

NDK_TOOLCHAIN_VERSION := clang

le_audioio.mk

ifndef LE_SDK_PATH
LE_SDK_PATH := $(call my-dir)
endif

LOCAL_PATH:= $(LE_SDK_PATH)

include $(CLEAR_VARS)

LOCAL_MODULE            := le_audioio
LOCAL_EXPORT_C_INCLUDES := $(abspath $(LE_SDK_PATH)/include)
LOCAL_EXPORT_LDLIBS     += -lOpenSLES
ifeq ($(TARGET_ARCH_ABI),x86)
LOCAL_SRC_FILES     := libs/development/libAudioIO_Android_x86-32_SSSE3.a
else
ifeq ($(TARGET_ARCH_ABI),armeabi-v7a)
LOCAL_ARM_NEON  := true
LOCAL_SRC_FILES := libs/development/libAudioIO_Android_ARMv7a_NEON.a
else
LOCAL_SRC_FILES := libs/release/libAudioIO_Android_ARMv6_VFP2.a
endif
endif

include $(PREBUILT_STATIC_LIBRARY)

le_utilityio.mk

ifndef LE_SDK_PATH
LE_SDK_PATH := $(call my-dir)
endif

LOCAL_PATH:= $(LE_SDK_PATH)

include $(CLEAR_VARS)

LOCAL_MODULE            := le_utility
LOCAL_EXPORT_C_INCLUDES := $(abspath $(LE_SDK_PATH)/include)
LOCAL_EXPORT_LDLIBS     += -landroid -llog
ifeq ($(TARGET_ARCH_ABI),x86)
LOCAL_SRC_FILES     := libs/development/libUtility_Android_x86-32_SSSE3.a
else
ifeq ($(TARGET_ARCH_ABI),armeabi-v7a)
LOCAL_ARM_NEON  := true
LOCAL_SRC_FILES := libs/development/libUtility_Android_ARMv7a_NEON.a
else
LOCAL_SRC_FILES     := libs/release/libUtility_Android_ARMv6_VFP2.a
LOCAL_EXPORT_LDLIBS += -latomic
endif
endif

include $(PREBUILT_STATIC_LIBRARY)

32

Решение

Пытаться этот новое решение от Google для аудио приложения.

1

Другие решения


По вопросам рекламы [email protected]