Eclipse CDT抱怨未解决的功能,但仍然成功构建

时间:2012-04-11 09:40:49

标签: c++ eclipse eclipse-cdt

以下C ++应用程序在Eclipse CDT中成功编译并运行,但IDE仍报告错误说明:

Could not resolve function wprintf
#include <stdio.h>
#include <wchar.h>

int main()
{
  wprintf(L"Hello world");
  return 0;
}

目录/usr/include(其中wchar.h所在的位置)肯定列在Include路径中,否则应用程序将无法编译。在wprintf报告上点击F3:

Could not find symbol 'wprintf' in index

这是我的设置:

  • openSUSE 11.4
  • 适用于Java开发人员的Eclipse IDE(Indigo Service Release 2 - Build 20120216-1857)
  • Eclipse CDT v8.0.2.201202111925

有谁知道如何让Eclipse CDT正确解析此功能?

5 个答案:

答案 0 :(得分:7)

我在Fedora 14上的Juno Release,Build id:20120510-1218遇到了同样的问题。解决索引问题:导航到首选项 - &gt; c / c ++ - &gt;编辑 - &gt;索引器 - &gt;取消选中&#34;允许启发式解析包含&#34;

- 一切顺利

答案 1 :(得分:3)

在首选项 - &gt; c / c ++ - &gt;编辑 - &gt;索引器禁用索引器,应用,返回首选项,并再次启用索引。这使Eclipse重新索引工作区。在那之后,我在编辑器右侧的假红色标志消失了。

答案 2 :(得分:0)

  

目录/ usr / include(wchar.h所在的目录)绝对是   在Include路径中列出,否则应用程序不会   编译

我想这个目录只在编译器包含路径中列出。此目录也必须在 Eclipse C ++解析器 Include path中列出,以正确解析函数。

答案 3 :(得分:0)

好的,如果正确列出/ usr / include,请转到preferences -> c/c++ -> Editor -> Indexer -> select Indexer

有时将其从快速c / c ++索引器更改为完整版可以解决问题。

希望有所帮助

答案 4 :(得分:0)

是什么帮助了我 在jni文件夹上按下鼠标右键 属性&gt; c / c ++ general&gt;路径和符号 添加与中相同的路径 项目&gt;属性c / c ++ general&gt;路径和符号

希望有所帮助