android mk 怎么写
时间: 2024-01-01 17:04:52 浏览: 28
Android.mk 是 Android NDK 中的一个构建脚本,用于编译 C/C++ 代码并生成对应的动态库。以下是一个简单的 Android.mk 文件示例:
```
LOCAL_PATH := $(call my-dir)
# 库名称
LOCAL_MODULE := mylib
# 构建类型,STATIC_LIB:静态库,SHARED_LIB:动态库
LOCAL_MODULE_TYPE := SHARED_LIB
# 源文件路径
LOCAL_SRC_FILES := foo.c bar.c
# 头文件路径
LOCAL_C_INCLUDES := $(LOCAL_PATH)/include
# 编译选项
LOCAL_CFLAGS := -O2 -Wall
# 链接选项
LOCAL_LDFLAGS := -shared
# 需要依赖的库,例如 log 库
LOCAL_LDLIBS := -llog
# 定义需要依赖的模块
include $(CLEAR_VARS)
LOCAL_MODULE := mydependency
LOCAL_SRC_FILES := dependency.c
include $(BUILD_STATIC_LIBRARY)
# 声明依赖的模块
LOCAL_STATIC_LIBRARIES := mydependency
# 构建目标
include $(BUILD_SHARED_LIBRARY)
```
在此示例中,我们定义了一个名为 mylib 的动态库,它由两个源文件 foo.c 和 bar.c 组成,头文件位于 include 目录下,编译选项为 -O2 和 -Wall,链接选项为 -shared,需要依赖 log 库,同时还声明了一个名为 mydependency 的静态库模块,并将它添加为依赖。最后,我们使用 BUILD_SHARED_LIBRARY 命令构建目标动态库,它会自动链接所有的依赖库。