JNI编程,Android.mk文件怎么添加

JNI编程,Android.mk文件怎么添加,第1张

android.mk 是Android开发中,用来编译JNI代码的

在开发工具中,new JNI 即可创建一个 android.mk文件

一个Android.mk文件可以编译多个模块,每个模块属下列类型之一:

APK程序 一般的Android程序,编译打包生成apk文件

JAVA库 java类库,编译打包生成jar文件

C\C++应用程序 可执行的C\C++应用程序

C\C++静态库 编译生成C\C++静态库,并打包成.a文件

C\C++共享库 编译生成共享库(动态链接库),并打包成.so文, 有且只有共享库才能被安装/复制到您的应用软件(APK)包中。

Android NDK的例子中,每个需要编译的c/c++文件都是清晰的列在Android.mk文件中LOCAL_SRC_FILES变量后面的,如果文件很多,这样就不好办了。

我们可以使用通配符来解决大量的源文件添加到Android.mk的问题:

第1行是使用GNU Make函数wildcard来查找所有目录下面的文件,这里查找的是"当前项目路径/foo"目录下面的所有的“.c”文件,

第2行会把所有找到的文件名中的$(LOCLA_PATH)路径给去掉,只剩下foo/*.c类似的名字。

MY_FILES := $(wildcard $(LOCAL_PATH)/foo/*.c)

MY_FILES := $(MY_FILES:$(LOCAL_PATH)/%=%)

LOCAL_SRC_FILES += $(MY_FILES)

Android NDK例每需要编译c/c++文件都清晰列Android.mk文件LOCAL_SRC_FILES变量面文件办

我使用通配符解决量源文件添加Android.mk问题:

第1行使用GNU Make函数wildcard查找所目录面文件查找"前项目路径/foo"目录面所.c文件

第2行所找文件名$(LOCLA_PATH)路径给掉剩foo/*.c类似名字

MY_FILES := $(wildcard $(LOCAL_PATH)/foo/*.c)

MY_FILES := $(MY_FILES:$(LOCAL_PATH)/%=%)

LOCAL_SRC_FILES += $(MY_FILES)


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/bake/7969740.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-12
下一篇2023-04-12

发表评论

登录后才能评论

评论列表(0条)

    保存