我们有一个设置,其中我们的 Android 游戏包含一些使用 ndk-build 构建的 native 库。
我们的项目包含以下结构:
Root
|
|-- jni
|
|-- Android.mk // $include ( lib.mk ) and ( photon/photon.mk)
|-- lib.mk
|-- photon
|
|----- photon.mk
|----- debug_android_armeabi.mk
|----- release_android_armeabi.mk
其中一个构建的库 (Photon) 除了其主要的 makefile 之外还附带了 2 个额外的 makefile - 一个用于调试,一个用于发布。
我的问题是 - 如何将此信息传递给 ndk-build,以便在构建时选择正确的附加 mk 文件?
最佳答案
可能,您的 photon.mk
看起来像
...
ifdef DEBUG
include debug_android_armeabi.mk
else
include release_android_armeabi.mk
endif
...
这样你就可以简单地使用
ndk-build DEBUG=1
如果你想依靠 release/debug build 的 ndk
官方功能,你可能更喜欢
...
ifeq ($(APP_OPTIM),debug)
include debug_android_armeabi.mk
else
include release_android_armeabi.mk
endif
...
关于android - NDK 使用不同的 mk 文件构建以进行发布/调试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20931831/