【发布时间】:2019-02-24 18:24:57
【问题描述】:
Android Studio,一个带有 NDK 库的项目,使用带有 Android.mk 的 ndkBuild。我的构建使用静态库依赖项,静态库作为调试和发布风格存在于单独的目录中。生成文件去:
#Ref to libfoo
include $(CLEAR_VARS)
LOCAL_MODULE := foo
LOCAL_SRC_FILES := $(FOOPROJECT)\foo\build\intermediates\ndkBuild\debug\obj\local\$(TARGET_ARCH_ABI)\libfoo.a
include $(PREBUILT_STATIC_LIBRARY)
LOCAL_SRC_FILES 将debug 风格硬编码为路径的一部分。不好。我想在那里使用“调试”或“发布”,具体取决于当前的构建类型。
makefile 中的当前构建类型是否可用作变量?如果没有,是否可以通过 gradle 文件将其传递给 ndk-build?
【问题讨论】:
-
仅供参考,这是how you can manage the different paths with CMake,但不是ndk-build。
-
您还想在发布模式下构建其余的本机代码吗?否则会有
APP_OPTIM变量。 -
不,我想在这个项目和依赖项中保持调试/发布的区别并使它们匹配。很好的发现,让我玩。
-
宾果游戏。给个答案,我接受。作为记录,
APP_OPTIM设置为“debug”,即使“JNI debuggable”在调试类型上设置为 false,我已经检查过了。 -
"JNI debuggable" 表示您的 JNI 代码可以调试,它对“构建类型”没有任何意义。
标签: android gradle android-ndk ndk-build