3

How to create a multiple .so file or library in a single ndk-build run For example i have posted my code:

build.gradle:

ndk {
moduleName = [“native-lib”,”MyLibrary”]
}

sourceSets.main {
jni.srcDirs = []
jniLibs.srcDir “src/main/libs”
}

Android.mk:

LOCAL_PATH := $(call my-dir)

include $(CLEAR_VARS)

LOCAL_MODULE := native-lib
LOCAL_MODULE := MyLibrary
LOCAL_SRC_FILES := native-lib.cpp
LOCAL_SRC_FILES := MyLibrary.cpp
include $(BUILD_SHARED_LIBRARY)

Application.mk:

APP_MODULES := native-lib
APP_MODULES := MyLibrary

APP_ABI := all

is this can be done or is there any other way to do this. Thanks

YLS
  • 1,475
  • 2
  • 15
  • 35

1 Answers1

5

You need to split things up in your Android.mk:

LOCAL_PATH := $(call my-dir)

include $(CLEAR_VARS)
LOCAL_MODULE := native-lib
LOCAL_SRC_FILES := native-lib.cpp
include $(BUILD_SHARED_LIBRARY)

include $(CLEAR_VARS)
LOCAL_MODULE := MyLibrary
LOCAL_SRC_FILES := MyLibrary.cpp
include $(BUILD_SHARED_LIBRARY)

There's no need for APP_MODULES in Application.mk. The build system will default to building all the modules in your Android.mk.

Michael
  • 57,169
  • 9
  • 80
  • 125