Eclipse CDT - 为什么它要构建我创建的文件的副本?

Eclipse CDT - why is it building copies of files I made?

我正在使用其他人设置的 eclipse 项目。我过去的经验是将基于 Makefile 的项目导入 Eclipse CDT。这个正在使用 CDT 内部生成器。

我遇到的问题是,由于不相关的版本控制问题,我制作了一些源文件的临时副本,只是为了确保我更改的源不会被破坏。这些副本被吸收到 CDT 构建中,当然会导致多个定义错误。这是内部构建器的标准行为吗?我如何才能避免构建器选取我不想编译的文件?

插图: 我更改了 foo.cpp 和 bar.cpp。我在同一个原始文件夹中复制了这些文件:"foo - Copy.cpp" 和 bar - Copy.cpp"。eclipse 构建器尝试构建 foo.cpp、bar.cpp、"foo - Copy.cpp"和 "bar - Copy.cpp"。我没有将 "copy" 文件添加到项目中。

当 Eclipse 在 C 或 C++ 项目文件夹中找到 c 或 cpp 文件时,它假定您想要构建并链接该文件。您可以通过右键单击该文件并选择 Resource Configurations->Exclude from Build 从弹出菜单中。在配置中打上复选标记,在这种情况下听起来像是所有配置,您希望文件被排除在外,然后单击“确定”。