NDK 使用笔记

2012/9/14

mk 文件 

LOCAL_LDLIBS  := 
连接到NDK现有的静态库,比如使用了C库函数需要 -lc,在 user/lib 目录下



----- 几点小技巧 ----

NDK 使用技巧

1.如何强制输出编译命令:
-------------------------------------------
使用命令 "ndk-build V=1"

2.如何强制重新编译所有源文件:
-------------------------------------------
Use GNU Make's "-B" option, as in:

   ndk-build -B
  
3.如何将你的代码放在 $PROJECT/jni 以外的文件夹:
-------------------------------------------
第一, 你可以告诉 $PROJECT/jni/Android.mk 包含其他 Android.mk

第二, 定义 APP_BUILD_SCRIPT 在 Application.mk 文件
指向一个 Android.mk 文件位置.

4.不必使用 cd 命令进入工程根目录即可编译:
-------------------------------------------
使用命令  ndk-build -C <工程路径>

5.将你的 Application.mk 存放在 $PROJECT/jni 以外的地方:
---------------------------------------------------------
NDK r4以后支持使用命令
ndk-build NDK_APPLICATION_MK=/你/的/路/径/Application.mk

6.合理的添加头文件路径到你的模块声明
---------------------------------------------------------
当你定义了好几个模块时,编译某个模块经常需要包含另一个模块的头文件,如下面的例子:
 $PROJECT/jni/foo/
    Android.mk
    foo.h
    foo.c

  $PROJECT/jni/bar/
    Android.mk
    bar.c
 
 这bar.c包含了foo.h,你需要将foo的路径添加到 jni/bar/Android.mk
 
 下面有一种方法:
 LOCAL_C_INCLUDES := ../foo, 这样使得相对于当前路径
 
 正确的方法是:
 LOCAL_C_INCLUDES := $(LOCAL_PATH)/../foo
 
 推荐使用 $(LOCAL_PATH) 的相对路径

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值