前言
Android提供了NDK工具,用来编译native代码(c/c++),该工具配置好了相关的交叉编译环境和工具链,只需要你简单地编写几个.mk文件即可将你的c/c++代码编译为Android的java工程/Android手机可以识别、加载和运行的库或者应用程序。
默认情况下,使用NDK编译c/c++代码,需要将该代码放置到任一个Android应用工程的jni目录下,然后编写相应的Android.mk文件,并执行ndk-build
命令完成编译。其实你也是可以在任意目录下去编译native代码的,只需要在ndk-build
命令后面添加相应的命令行参数即可,这里给出一些常用的ndk-build
命令行参数,方便大家灵活地使用NDK编译自己的native代码,具体的示例我将会在后续的文章中给出。
ndk-build命令行参数
ndk-build NDK_LOG=1
用于配置LOG级别,打印ndk编译时的详细输出信息
ndk-build NDK_PROJECT_PATH=.
指定NDK编译的代码路径为当前目录,如果不配置,则必须把工程代码放到Android工程的jni目录下
ndk-build APP_BUILD_SCRIPT=./Android.mk
指定NDK编译使用的Android.mk文件
ndk-build NDK_APPLICATION_MK=./Application.mk
指定NDK编译使用的application.mk文件
ndk-build clean
清除所有编译出来的临时文件和目标文件
ndk-build -B
强制重新编译已经编译完成的代码
ndk-build NDK_DEBUG=1
执行 debug build
ndk-build NDK_DEBUG=0
执行 release build
ndk-build NDK_OUT=./mydir
指定编译生成的文件的存放位置
ndk-build -C /opt/myTest/
到指定目录编译native代码
例:
编写 .c 文件
假设你在 ~/math 目录下编写了一个 math.c 文件,内容如下:
#include <stdio.h>int add( int a , int b ) {return a+b;}
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341
软考中级精品资料免费领
- 历年真题答案解析
- 备考技巧名师总结
- 高频考点精准押题
- 资料下载
- 历年真题
193.9 KB下载数265
191.63 KB下载数245
143.91 KB下载数1148
183.71 KB下载数642
644.84 KB下载数2756
相关文章
发现更多好内容- 如何在 Java 中实现对正方形的缩放操作?(如何在Java中对正方形进行缩放操作)
- 如何正确使用 Java 的 join 方法?(java join方法怎么使用)
- Java 中 DecimalFormat 在哪些场景下使用较为合适?(Java DecimalFormat在哪里使用合适)
- 如何确保Redis客户端的安全性:实用技巧与最佳实践
- 在 JavaScript 中如何使用 parentNode?(javascript中的parentNode怎么用)
- 如何高效编码 Java Supplier 接口?(java supplier接口的高效编码技巧)
- 如何进行 Java NoSQL 查询优化?(java nosql查询优化怎样进行)
- Java 中 `equals()` 的核心究竟是什么?(java eques的核心是什么)
- Java代理模式的优缺点分别有哪些?(Java代理模式有哪些优缺点)
- 2024下半年北京软考成绩复查时间及流程