anroid opencv jni &vector 头文件问题

这篇博客主要讨论了在Android NDK开发中遇到的两个问题:1)jni.h头文件未解析的问题,解决办法是将相关头文件拷贝到工作目录;2)vector头文件未解析的问题,原因是NDK默认使用GNU C++库,解决方案是添加包含库的路径到APP_STL或修改Android.mk文件。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Q1: 

 #include<jni.h>    unresolved inclusion:<jni.h>

java/jdk1.7.0_25/include/win32/jni_md.h

java/jdk1.7.0_25/include/jni.h

俩个文件一同拷贝到工作目录下


Q2:

#include<vector>    unresolved inclusion:<vector>

Android NDK项目中我们默认使用的是GNU C++库,其在NDK中的路径为:

${NDKROOT}/sources/cxx-stl/gnu-libstdc++/include

可以将该路径添加到Properties -> C++ General -> Paths and Symbols -> includes项中

Application.mk文件中默认存在这么一行语句:APP_STL := gnustl_static

修改Android.mk文件,添加:

<code><span style="color: #ff0000;">LOCAL_C_INCLUDES += ${NDKROOT}/sources/cxx-stl/stlport/stlport</span>

同时修改Application.mk文件,添加以下语句:
<span style="color: #ff0000;">APP_STL := stlport_static</span>

然后在项目属性配置中添加NDK库的stlport所在路径
Properties; C++ General; Paths and Symbols ; includes项中添加即可。



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值