`

NDK开发指南---NDK使用方法

 
阅读更多

Android NDK的使用方法:

======================

 

NDK的用户提示和技巧集合

 

如何强制显示build命令

------------------------

 

执行"ndk-build V=1",实际生成的命令将会被显示。这可以用来验证你编译的东西,并且还会检查NDK的

build system中的错误。

 

(V=1 来自Linux内核的build system)

 

如何强制重新编译你的源码

------------------------

使用GNU Make的“-B”选项

 

ndk-build -B

 

如何存储本地源码到除$PROJECT/jni以外的位置:

-------------------------------------------

 

首先,你可以在你的$PROJECT/jni/Android.mk中包含另一个不同位置的Android.mk

 

另外,你需要在你的Application.mk文件中定义APP_BUILD_SCRIPT来指向那个替代的Android.mk文件

 

如果在不使用cd-ing的情况下来编译你的本地项目文件

------------------------------------------------

有时候,你需要在不用使用cd命令切换到根目录的情况下重新编译你的本地项目文件,可以使用

GNU-Make的'-C <path>'选项,如:

 

ndk-build -C <project-path>

 

如何将你的Application.mk文件存储子$PROJECT/jni目录之外

------------------------------------------------------

从NDK r4开始,你可以简单的将源文件放到$PROJECT/jni/目录下,然后执行'ndk-build'脚本

 

如果你想使用'ndk-build'命令但是将源文件放到了其他的位置,你可以使用如下命令:

 

ndk-build NDK_APPLICATION_MK=/path/to/your/Application.mk

 

如果你想使用传统的$NDK/apps/<name> 来build system,你可以创建一个符号链接到你最终的Application.mk

比如:

 

$PROJECT/foo/Applicatio.mk

 

用如下的命令创建符号链接

 

ln -s $PROJECT/foo $NDK/apps/<name>

 

这将使得你的$NDK/apps/<name>/Applicaiton.mk文件直接指向$PROJECT/jni/Application.mk

 

注意,这样生成的文件将仍然在$NDK/out/apps/<name>目录下。

 

Windows用户在使用Cygwin的情况下,它可以通过"ln -s"命令来创建符号链接,例如

 

ln -s <target> <link>

 

如何正确的添加一个包含目录到你的模块中:

--------------------------------------

 

如果你定义了若干模块,在编译另一个模块的时候需要包含某个模块的头文件,例如

 

$PROJECT/jni/foo/

Android.mk

foo.h

foo.c

 

$PROJECT/jni/foo/

Android.mk

fo.c

 

bar.c使用了"#include <foo.h>",你需要正确的将路径添加到foo模块的jni/bar/Android.mk中

 

例如,可以使用如下这样

 

LOCAL_C_INCLUDES := ../foo

 

但是这样是不会执行的,因为所有编译都从'ndk-build'被调用所在的目录开始,这些包含文件必须是

相对的才可以。

 

正确的方法是:

 

LOCAL_C_INCLUDE :=$(LOCAL_PATH)/../foo

 

它才哦那够了相对路径的方式,你需要将foo和bar移到源码目录的更深层次下。

 

如果你必须需要它,你可以使用NDK_APP_PROJECT_PATH指向你的项目目录

 

LOCAL_C_INCLUDES :=$(NDK_APP_PROJECT_PATH)/jni/foo

 

然而我们不建议这种方式,相对路径$(LOCAL_PATH)这种方式会更好些

分享到:
评论

相关推荐

    Android NDK开发指南-android.mk文件

    android.mk文件语法详述及简单实例

    JNI NDK 开发指南

    JNI NDK 开发指南 对JNI有个初步的认识,里面涉及必要的函数说明

    android NDK 开发指南

    android NDK 开发指南 android NDK 开发指南 android NDK 开发指南 android NDK 开发指南

    ndk开发指南

    ndk ,jni ,安卓,android

    Android NDK Game Development Cookbook (安卓NDK游戏开发指南)

    Android NDK Game Development Cookbook A systematic guide consisting of over 70 recipes which focus on helping you build portable mobile games and aims to enhance your game development skills with ...

    Android NDK开发文档本地版

    Android JNI开发指南 Android.mk Application.mk-

    NDK开发指南

    Android NDK是一个允许Android应用开发人员使用C或C++源文件编译并嵌入到本机源代码中的应用程序包的一组工具。

    JNI_NDK 开发指南.rar

    你可能需要用底层语言实现一个小型的时间敏感代码,比如汇编,然后在你的 java程序中调用这些功能。

    Android C++ 高级编程-使用NDK

    本书提供了android NDK开发的全面信息,介绍了从NDK开发环境搭建的每一步细节,NDK的基本概念和体系结构,具体的开发流程和方法。同时还比较详尽地介绍了Android NDK对C、C++标准库的支持。是一本关于Android NDK...

    JNI资料技术文档

    该技术文档包括JNI-NDK 开发指南 - v1.0,JNI编程指南,the java Native Interface英文原版和中文版

    NDK&JNI;开发指南

    NDK&JNI;开发文档,官方文档 chm格式。便于大家交流和学习

    java版飞机大战源码-34563:34563

    使用指南 - v1.1.epub Android Studio 操作手册 - v1.1.epub Android Weekly 中文版 - v1.0.epub Android 坦克大战游戏 - v1.0.epub Android 实战技巧 - v1.1.epub Android 实战简易教程(连载) - v1.0.epub ...

    Android开发权威指南

     《Android开发权威指南》适合具备一定软件开发经验、想快速进入Android开发领域的程序员,具备一些手机开发经验的开发者和Android开发爱好者学习使用;也适合作为相关培训学校的Android培训教材。

    Java本地接口(JNI)编程指南和规范.pdf

    Java本地接口(JNI)编程指南和规范.pdf

    Android开发权威指南.李宁.扫描版

    《Android开发权威指南》内容上涵盖了用最新的Android版本开发的大部分场景。全书分4个部分,分别从Android基础介绍、环境搭建、SDK介绍,到应用剖析、组件介绍、综合实例演示,以及符合潮流的、最新的移动开发技术...

    NDK_userguide

    NDK_userguide,基于TIc6455DSP芯片的网络通信开发指南。

    Android开发权威指南 第二版

    《Android开发权威指南(第二版)》全面介绍了Android应用开发的各种技术,主要内容包括Android的四大应用程序组件(Activity、Service、Content Provider和Broadcast Receiver)、布局、菜单、控件、资源和本地化、可视...

Global site tag (gtag.js) - Google Analytics