我已经在本地分叉(通过hg clone
)一个C / C ++(Eclipse CDT)项目并将其导入我的Eclipse工作区。我的分叉项目的编辑器窗口现在看起来像这样:
显然,这些不是真正的错误,因为代码构建正确。此外,这些错误没有在原来的项目中标记出来。
为什么Eclipse认为此源存在错误?
编辑:将鼠标悬停在“错误”上时的Eclipse错误消息是,例如Type int64_t could not be resolved
和symbol 'cout' could not be resolved
。
includes
的“文件夹”。这个项目缺少。我怎样才能找回来?
答案 0 :(得分:3)
Eclipse必须知道查找包含文件的路径。这可以使用常规eclipse设置或逐项目设置。
出于某种原因,似乎没有为当前项目设置默认路径。
你能做什么: 打开项目设置并转到C / C ++ General - >路径和符号(至少在我的eclipse版本中调用它)并修复包含目录。
也许只需加载该特定项目的默认配置即可。也许你必须自己设置包含的pathes。在Unix / OS X上,这通常应该是usr/include
。在Windows上我不知道,但这应该很容易找到。
之后可能需要重建你的eclipse索引(右键单击你的项目,然后索引 - >重建)。
如果这没有帮助,请分享项目的“路径和符号”对话框的屏幕截图。
另请参阅此主题的eclipse documentation。
答案 1 :(得分:2)
我必须包括
CDT Cross GCC Built-in Compiler Settings
CDT GCC Built in Compiler Settings [ Shared ]
在项目的属性中 - > C / C ++一般 - >预处理器包括路径,宏等 - >提供商
答案 2 :(得分:0)
在Eclipse中将此定义添加到项目属性 - > C / C ++常规 - >路径和符号
__STDC_FORMAT_MACROS
重建你的日食指数。它会起作用。
答案 3 :(得分:0)
这适用于Mac OS X Yosemite 10.10.5,Eclipse版本Mars.1发布(4.5.1):
由于Eclipse通常通过工具链发现包含,检查您是否设置了实际工具链(当我在导入项目后遇到此问题时,工具链设置为&#34 ;没有工具链。"):
项目 - >属性 - > C / C ++ Build - >工具链编辑器 - >当前的工具链
如果下拉列表中没有工具链,请尝试取消选中"仅显示兼容的工具链"并选择了一个工具链(我选择了Cross GCC)。当我保存更改并重新打开项目属性以再次查看此字段时,"仅显示兼容的工具链"自动重新检查。
然后重新编制项目索引:
项目 - > C / C ++索引 - >重建
这解决了我的问题("伪错误"消失了,包含"文件夹"出现在我的项目文件系统视图中)。
答案 4 :(得分:-1)
您有#include
代码中的正确文件吗?对于std :: cout,它将是:
#include <iostream>
和int64_t
:
#include stdint.h