PS:本文主要记录Android.mk和Application.mk的常用配置。不会做太过详细的介绍。
一、Android.mk
LOCAL_PATH := $(call my-dir) include $(CLEAR_VARS) LOCAL_MODULE := demo LOCAL_SRC_FILES := demo.c lib.c LOCAL_LDLIBS :=-llog -lm include $(BUILD_SHARED_LIBRARY) LOCAL_CFLAGS := -O2 # LOCAL_SHARED_LIBRARIES := libutils libcutils
LOCAL_PATH
用于指定源文件的位置,my-dir 表示当前目录。
LOCAL_PATH := $(call my-dir) 即用于指定源文件的位置为当前目录。
include $(CLEAR_VARS)
包含执行清除一些 LOCAL_XXX 变量的特殊 GNU Makefile。
LOCAL_MODULE
用于指定模块名称,即生成的文件名。如果生成的是动态链接库,那么会在该名称前后分别加上lib和.so。
LOCAL_SRC_FILES
用于指定需要编译的c/c++源文件,多个文件之间用空格分开。
LOCAL_LDLIBS
用于指定构建时使用的额外动态链接库。
include $(BUILD_SHARED_LIBRARY)
用于指定执行构建动态库的 GNU Makefile。
BUILD_SHARED_LIBRARY 构建动态库
BUILD_STATIC_LIBRARY 构建静态库
BUILD_EXECUTABLE 构建可执行文件
LOCAL_CFLAGS
用于指定在构建时要传递的编译标记。
LOCAL_SHARED_LIBRARIES
用于指定运行时依赖的共享库模块。
二、Application.mk
APP_ABI 设置为特定 ABI 生成代码。
APP_ABI := armeabi-v7a arm64-v8a x86
参考:
JNI开发之-Android.mk和Application.mk 详解_android.mk 相对路径_jack22001的博客-CSDN博客
标签:NDK,mk,Application,BUILD,SHARED,Android,LOCAL From: https://www.cnblogs.com/silfox/p/17177878.html