android NDK jni下的c文件 Unresolved inclusion

本文介绍了解决在Android NDK环境下移植C++项目时遇到的系统头文件未找到的问题。通过正确配置cygwin环境变量及映射Windows路径,并将NDK的头文件目录作为linked folder加入工程中,可以有效解决这一常见问题。
 

android NDK jni下的c文件 Unresolved inclusion

最近在NDK下面移植一个C++的项目,遇到很多系统头文件找不到的问题,一直在纠结自己环境变量配错了,cygwin的环境变量配了cygwin/bin,c_include ,c++_include 等一堆乱起八糟的东西都没有搞定,其实与cygwin下的环境没有什么关系,不过有一个要注意,映射window下的路径到cygwin .
设置里面c/c++增加:windows/preference c/c++ /Debug /Source Lookup Path /add 选择Path map , \cygdrive\c   -------c:\ 的映射

还有一种错误时NDK内部的头文件找不到,例如<jni.h>,原因是在eclipse编辑环境中没有找到对应的include中的文件。解决方法是将包含该文件的include目录作为新的linked folder加入工程中。具体方法如下:
1. 右击工程->New->Folder
2. 对话框中点击Advanced

3. 选择Link to alternate location (Linked Folder),选择需要的include目录

4. Finish后刷新工程,问题解决。

include 目录可以在ndk的安装目录中找到

例如:/android-ndk-r9b/platforms/android-18/arch-arm/usr/include



这样就能完美解决了,这些问题困扰了我一周的时间,都在纠结这个问题,现在记录下来。


基本上把c++d的工程直接搬到android中的jni中,都会遇到这个错误。注意2点,一是include NDK的环境,二是cygwin的环境变量。

现在已经全部解决,神清气爽,马上就要去大美利坚了,赞一个!!!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值