最后,我们使用include $(BUILD_PREBUILT)命令来编译和链接预编译的库文件。 编译和链接示例 在你的项目中,你可以创建一个名为Android.mk的文件,并将上述代码复制到该文件中。然后,在项目的根目录下运行ndk-build命令,即可开始编译和链接预编译的库文件。 总结 本文介绍了在Android开发中使用Android.mk文件中的BUILD...
在上面《一.1、Android.mk的基本格式》中虽然我进行了详细的注释,但是有必要继续分类说明 1、LOCAL_PATH := $(call my-dir) 每个Android.mk文件必须以定义LOCAL_PATH为开始。它用于在开发tree中查找源文件。宏my-dir 则由Build System提供。返回包含Android.mk的目录路径(即包含Android.mk file文件的目录)。 ca...
(1)Android.mk文件首先需要指定LOCAL_PATH变量,用于查找源文件。由于一般情况下Android.mk和需要编译的源文件在同一目录下,所以定义成如下形式: LOCAL_PATH:=$(call my-dir) 上面的语句的意思是将LOCAL_PATH变量定义成本文件所在目录路径。 (2)Android.mk中可以定义多个编译模块,每个编译模块都是以include $(CLEAR_...
(1)Android.mk文件首先需要指定LOCAL_PATH变量,用于查找源文件。由于一般情况下Android.mk和需要编译的源文件在同一目录下,所以定义成如下形式: LOCAL_PATH:=$(call my-dir) 上面的语句的意思是将LOCAL_PATH变量定义成本文件所在目录路径。 (2)Android.mk中可以定义多个编译模块,每个编译模块都是以include $(CLEAR_...
include $(BUILD_PACKAGE) 看上面的MK文件就是编译一个简单的APK文件, LOCAL_PATH := $(call my-dir) 这句话代表的当前根目录下,每一个Android.mk文件都必须有这个命令而且是在开头 include $(CLEAR_VARS) 宏CLEAR_VARS 由编译系统提供,指定让GNU MAKEFILE为你清除许多LOCAL_XXX变量(例如 LOCAL_MODULE, LOCA...
include $(BUILD_xxx_xxx)执行NDK的默认脚本,它会收集include $(CLEAR_VARS)脚本后所有定义的LOCAL_xxx变量,然后根据它们来生成模块。 二、Android.mk语法详解 LOCAL_PATH := $(call my-dir) 每个Android.mk文件必须以定义LOCAL_PATH为开始。它用于在开发tree中查找源文件。宏my-dir 则由Build System提供。返回...
一个Android.mk file首先必须定义好LOCAL_PATH变量。它用于在开发树中查找源文件。在这个例子中,宏函数‘my-dir’, 由编译系统提供,用于返回当前路径(即包含Android.mk file文件的目录)。 include $(CLEAR_VARS) CLEAR_VARS 变量由Build System提供。并指向一个指定的GNU Makefile,由它负责清理很多LOCAL_xxx. ...
Android提供了Prebuilt编译方法,两个文件prebuilt.mk和multi_prebuilt.mk,对应的方法宏是BUILD_PREBUILT和 BUILD_MULTI_PREBUILT。 prebuilt.mk就是prebuilt的具体实现,它是针对独立一个文件的操作,multi_prebuilt.mk是针对多个文件的,它对多个文件进行判断,然后调用prebuilt对独立一个文件进行处理。
include$(BUILD_MULTI_PREBUILT) 3.引用,在Android.mk中添加 代码语言:javascript 复制 LOCAL_JNI_SHARED_LIBRARIES:=libsmartphotojni 即可。 编译会自动将so文件拷贝到out/target/product/***/obj/lib目录下,如果没有拷贝,可以手动拷贝后再进行编译或是写脚本进行拷贝,如下所示: ...
include $(BUILD_MULTI_PREBUILT) # Use the folloing include to make our test apk. include $(call all-makefiles-under,$(LOCAL_PATH)) 至少有一个子目录,src下放源码。 Android.mk中需要赋值的几个LOCAL_XXX变量, LOCAL_PATH,调用my-dir(在defination.mk中定义),得到当前路径,即,<yourSrcPath>/ pak...