有很多关于这方面的帖子,我已经尝试应用对其他人有用的解决方案,但仍然不适合我。
首先,我正在Linux下工作的c ++项目,Eclipse Indigo,gcc-4.7.1,cx11激活和Gentoo Linux,一切都很好。我的项目使用自制的静态库。我对一些模板类声明做了一些修改。然后,我的库中出现了一些意想不到的“无法解决”。
我所做的是重建库的索引,清理项目并重建它。它在修改之前和索引重建之前编译得很好,但是“无法解决”仍然在这里。
好的,我试着至少看看我的主要项目是否构建。库中有一个未解析的名称。所以我重建了主项目索引,在这里,所有标准关键字都带有下划线,“无法解决”到处都是,并且由于找到了数千个未解析的名称,因此无法进行编译。
我尝试清理并重建,在项目属性中添加许多包含路径:
-I/usr/lib/gcc/x86_64-pc-linux-gnu/4.7.1/plugin/include -I/usr/lib64/gcc/x86_64-pc-linux-gnu/4.7.1/include/g++-v4/algorithm -I/usr/lib/gcc/x86_64-pc-linux-gnu/4.7.1/include -I/usr/include -I/usr/include/linux -I/usr/local/include
这没有改变。
'索引/搜索未解析的功能'发现:
算法,cassert,cmath,cstdlib,fstream,iostream,map,set, sstream,string,tuple,utility
我试着明确地添加算法包含路径。但这没有改变。
在我的.cpp开头,我有一个using namespace std;
。如果我之前添加std::
,例如set
,则不会更改任何内容。
std::
之后的自动填充不建议例如set
。
当然,我试图关闭/重新打开Eclipse,但没有取得更多成功。
有任何线索吗?
编辑:我已经通过备份替换了我的.metadata,它似乎再次起作用。尽管如此,问题的根源仍然未知。由于大多数.metadata文件都是二进制文件,我无法调查。答案 0 :(得分:2)
.metadata已损坏。我只是用备份替换它。