在Eclipse上使用Android的原生c ++ – 在stdlib上给出错误但有效

我一直在Android eclipse环境中构建我的Android应用程序。 构建我的c ++代码并使用ndk-build独立编译它。 这很好。

我需要调试logcat突然抛出的sigsegv错误。

所以我在eclipse中将项目切换为“在android中添加本机代码”。 现在它调试我的c ++代码,但每次使用任何std组件时都会给我一个错误,比如vector,所以我不能运行代码,因为它包含错误。

该项目在之前的配置上运行正常。 我相信我添加了一个用于std支持的库。

关于如何正确调试我的本机代码的任何想法?

感谢您的帮助

更新我完全重新安装了我的sdk,eclipse(这次是juno)和所有插件。 没变。 错误检查无法识别java和std相关的东西:

#include  using namespace std; 

用红色下划线标出。

其余的c ++被正确识别。

UPDATE2

当我将$ {NDKROOT} / sources / cxx-stl / gnu-libstdc ++ / include添加到Paths和Includes时,已经包含了java语句。 净矢量,我还尝试添加$ {NDKROOT} / sources / cxx-stl / stlport / stlport,但它还没有修复矢量问题。 如果禁用错误检查,项目将编译,如果我发出synthax错误,编译器会发出警告。 这对我来说没问题。

您可能首先可以在Project Properties|C/C++ General|Code Analysis禁用错误,以便您的项目进行编译。

然后,您可以检查“ Project Properties|C/C++ General|Paths and Symbols中的包含路径是否正确。

我也听说更新ADT插件可能有所帮助。