无法解析 Android CDT setup std

标签 android opencv android-ndk eclipse-cdt

我已经使用 CDT 编程了一段时间,它运行良好。一般来说,一切都适用于它,例如,我可以通过输入

来导入 opencv
using namespace cv;

但是,现在有两个我需要的导入不起作用。

#include <vector>
using namespace std;

这两个都带有下划线,导致编译错误的标准(另一个只是警告)。当我设置它时,this guide告诉我以下包含将消除这些错误:

# for NDK r8b and later:
${NDKROOT}/platforms/android-9/arch-arm/usr/include
${NDKROOT}/sources/cxx-stl/gnu-libstdc++/4.6/include
${NDKROOT}/sources/cxx-stl/gnu-libstdc++/4.6/libs/armeabi-v7a/include
${ProjDirPath}/../../sdk/native/jni/include

然而,这只对 opencv 有帮助。我正在使用 NDK v r8d(据我所知是最新的)。除了这些包括,我可以让它编译和构建。我将不胜感激任何指向正确方向的指示!

最佳答案

我不确定为什么这在 OpenCV 文档中没有任何地方,但这里是你编译它的方法:

除了上面的包含之外,您还需要再包含两个(如果还没有的话)。您需要找到您的 C++ 文件所在的位置。在 Mac 上,它们位于/usr/include。所以在Project Properties->C/C++ General->Paths and Symbols->Includes Tab下添加如下两个import

/usr/include/c++/<your version of c++>
/usr/include

在我的例子中,上面是这样的:

/usr/include/c++/4.2.1
/usr/include

关于无法解析 Android CDT setup std,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14736293/

相关文章:

android - 在 android ndk 中定义 sem_t

eclipse - ADT 23 不喜欢 NDK11

android - 在 LocalBroadcastManager 注册的 BroacastReceiver 的 onReceive() 在哪个线程运行?

java - java.util.Scanner 有那么慢吗?

android - 使用 TestNG 进行 android 测试 - 合适吗?潜在问题?

Android Debug Monitor 层次结构 View 未显示

python - ValueError : operands could not be broadcast together with remapped shapes [original->remapped]: (2, 2) 和请求的形状 (3,2)

python - 我怎样才能让视频在录制时暂停/继续?

c++ - OpenCV 未定义对 Mat 的引用

android - 使用 Android 的 NDK 构建的代码会像在 Dalvik 上一样在 ART 上运行吗?