c++ - Eclipse CDT C/C++ : Include a header file from another project

标签 c++ c eclipse include

我在 Eclipse CDT ma​​inshared 中有两个 c++ 项目。在 shared 中,我有一个名为 calc.h 的 header 。我想在 ma​​in 中使用这个 header ,所以我做了以下操作:

  • ma​​in
  • 的相关文件中添加了#include "calc.h
  • ma​​inproperties -> Project references 中,我检查了 shared

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

我可以通过在 ma​​inproperties->C/C++ Build->Setting-> 中手动添加 shared 的源文件夹来使其工作GCC C++Compiler->Includes,但是我有一种不好的感觉,那就是在大型项目更复杂的依赖项上这会变得很麻烦。因此,我希望 Eclipse 可以通过项目引用来处理这个问题。

是我遗漏了什么还是手动操作是唯一的方法?

最佳答案

你是对的,就是这样!

我在大型项目中使用 Eclipse CDT,但我不使用 Eclipse 编译器设置。使用 CDT 编译器的设置有一些缺点:

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

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

  1. 在终端中,为您的新项目创建一个文件夹。
  2. 使用您最喜欢的文本编辑器(vim、emacs、Text edit、kate 等...)为您的项目创建 CMakeLists.txt 文件。您不必创建详尽的 CMakeLists,只需为您的第一个文件创建一个小的 CMakeLists 就足够了。
  3. 然后,让 cmake 生成 Eclipse 项目,如下所示:
    cmake -G "Eclipse CDT41. Unix Makefiles"
    
  4. 打开Eclipse,点击File --> Import,选择“General/Existing project into workspace”。选择第一步创建的文件夹,你的项目就可以在eclipse中使用了。

CMake 是用于管理项目的编译器配置工具...如果您不知道这一点,我鼓励您发现它。

干杯!

关于c++ - Eclipse CDT C/C++ : Include a header file from another project,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9272882/

相关文章:

c - 如何在C中找到除法的余数?

c++ - 指针非类型模板参数的用途?

c++ - 为什么我的 LLVM JIT 实现会出现段错误?

c - Linux上 `ru_maxrss`的单位是什么?

c - y/n 循环位于函数末尾

python - Eclipse 和 Google App Engine : ImportError: No module named _sysconfigdata_nd; unrecognized arguments: --high_replication

java - 将Resin源导入Eclipse

java - 通过 Eclipse 从 Java(FX) 创建 Windows EXE

c++ - Qt : KeyPress event

c++ - ironpython 在 python 中实例化 C++ 类