安卓编译android.mk,详解安卓系统中的Android.mk文件

概述    Android.mk文件用来向编译系统描述如何编译你的源代码。更确切地说,该文件其实就是一个小型的Makefile。由于该文件会被NDK的编译工具解析多次,因此应该尽量减少源码中声明变量,因为这些变量可能会被多次定义从而影响到后面的解析。这个文件的语法允许把源代码组织成模块,每个模块属于下列类型之一:

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

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

C\C++应用程序:可执行的C/C++应用程序。

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

C\C++共享库:编译生成共享库,并打包成.so文件,有且只有共享库才能被安装/复制到APK包中。

举例    这里参考了网上一个通用的例子,编译简单的“Hello World”,来说明一下Android.mk编写。例如下面的文件:

1. sources/test/hello.c

2. sources/test/Android.mk

其中“hello.c”是一个JNI共享库,实现返回“hello world”字符串的原生方法。因此,Android.mk文件内容如下:

LOCAL_PATH := $(call my-dir)

include $(CLEAR_VARS)

LOCAL_MODULE := hello

LOCAL_SRC_FILES := hello.c

include $(BUILD_SHARED_LIBRARY

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值