一.首先先了解:Android NDK编译
Application.mk
APP_PROJECT_PATH | 项目路径 |
APP_MODULES | 编译模块列表 |
APP_OPTIM | release/debug 不设则取决于manifest中的android:debuggable。 不建议设置。 |
APP_CFLAGS | 传递给编译器的选项(C /C++),作用于所有模块 |
APP_CPPFLAGS | 传递给编译器的选项(C++) -fexceptions 来支持C++异常 -frtti 来支持RTTI |
APP_BUILD_SCRIPT | 除了jni/Android.mk外,使用的其他mk文件 |
APP_ABI | abi列表 例如: APP_ABI := armeabi armeabi-v7a x86 |
APP_STL | system/stlport_static/stlport_shared/gnustl_static,推荐stlport_shared,授权优势 |
STLPORT_FORCE_REBUILD | true if 使用代码编译STLport而不是使用预编译 |
Android.mk (NDK r6)
LOCAL_PATH | Android.mk的路径,可以设置为$(call my-dir) |
LOCAL_MODULE | 模块名称 |
LOCAL_MODULE_FILENAME | 重新定义生成so的名称(可选) |
LOCAL_SRC_FILES | 模块要编译的文件列表 |
LOCAL_CPP_EXTENSION | 重新定义c++原文件的扩展名 |
LOCAL_C_INCLUDES | 追加到include搜索路径的路径列表 |
LOCAL_CFLAGS | 只作用于当前模块 |
LOCAL_CPPFLAGS | |
LOCAL_STATIC_LIBRARIES | 模块链接的静态库列表 |
LOCAL_SHARED_LIBRARIES | 模块运行时依赖的共享库列表 |
LOCAL_WHOLE_STATIC_LIBRARIES | like LOCAL_STATIC_LIBRARIES,use --whole-archive |
LOCAL_LDLIBS | 其他链接选项代码清单,例如 -lGLESv2 |
LOCAL_ |