Eclipse CDT C / C ++:包含来自另一个项目的头文件

我在Eclipse CDT main共享中有两个c ++项目。 在共享中我有一个名为calc.h的标题。 我想在main中使用这个头,所以我做了以下事情:

  • #include "calc.h#include "calc.h中的相关文件中
  • mainproperties -> Project references我检查了共享

我希望这会有效,但我得到一个fatal error: calc.h: No such file or directory编译时fatal error: calc.h: No such file or directory ,所以项目引用不知何故不起作用。

我可以通过在mainproperties->C/C++ Build->Setting->GCC C++Compiler->Includes手动添加共享的源文件夹来实现它,但是我感觉不会这会变成繁琐的大项目更复杂的依赖。 因此,我希望Eclipse可以通过项目引用来处理这个问题。

我错过了什么或手动是唯一的方法吗?

你是对的,这是他的方式!

我在大型项目上使用Eclipse CDT,但我不使用eclipse编译器设置。 有一些drawbakcs使用CDT编译器设置:

  • 正如你所说,在大型项目中,这很麻烦。
  • 如果你想在没有eclipse的平台上编译项目(当你部署你的应用程序时),这并不简单。

我使用CMake来管理我的eclipse项目。 当我开始一个新项目时,我执行以下步骤:

  • 在终端中:为新项目创建一个文件夹
  • 使用您喜欢的文本编辑器(vim,emacs,Text edit,kate …)创建项目的CMakeLists.txt。 您不必创建一个详尽的CMakeLists,只需要一个小的CMakeLists四个您的第一个文件
  • 然后请cmake生成eclipse项目,感谢:cmake -G“Eclipse CDT4 – Unix Makefiles”
  • 打开eclipse,单击File-> Import,然后选择“General / Existing project into workspace”,然后您可以选择在第一步中创建的文件夹,并且您的项目已准备好在eclipse中使用。

CMake是用于管理项目的编译器配置工具……如果您不了解它,我鼓励您发现它。

干杯!