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

时间:2012-02-14 06:53:51

标签: c++ c eclipse include

我在Eclipse CDT 主要共享中有两个c ++项目。在共享中,我有一个名为 calc.h 的标题。我想在 main 中使用此标题,因此我执行了以下操作:

  • #include "calc.h添加到主要
  • 中的相关文件中
  • 主要properties -> Project references我检查了共享

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

我可以通过在主要properties->C/C++ Build->Setting->GCC C++Compiler->Includes中手动添加共享的源文件夹来实现它,但我的感觉很糟糕对于更大的项目更复杂的依赖关系将变得繁琐。因此,我希望Eclipse可以通过项目引用来处理这个问题。

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

2 个答案:

答案 0 :(得分:11)

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

我在大型项目上使用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是用于管理项目的编译器配置工具......如果您不了解它,我建议您发现它。

干杯!

答案 1 :(得分:0)

如何使用符号链接将一个 Eclipse 项目包含在另一个 Eclipse 项目中(将一个项目链接到另一个项目)

我喜欢在文件系统/操作系统级别将另一个项目符号链接(符号链接)到当前项目中。这使您的文件系统认为其他项目的文件是当前项目文件的一部分,这使 Eclipse 认为其他项目的文件是当前项目文件的一部分。

例如,在 Linux(或者我也认为是 MacOS)中:

cd path/to/current_project
ln -si path/to/other_project .

(上述符号链接在 Windows 中也是可能的,但命令会有所不同。)

现在,在 Eclipse 的“项目资源管理器”中右键单击当前的 Eclipse 项目,然后转到“刷新”

您刚刚从另一个项目符号链接到当前项目的文件夹现在将显示出来。您将看到如下文件结构:

current_project/other_project

...在此 current_project/other_project 目录中包含所有其他项目的文件。

我一直在 Eclipse 中使用这个技巧来让 Eclipse 建立索引并将 Arduino 核心源代码引入我当前的 Arduino 项目,这样我就可以轻松地按 Ctrl + 单击并在 Arduino 核心周围导航,以便更好地理解所有内容当我处理我的图书馆或项目时。


这是我写的自述文件,其中完整记录了这些说明:https://github.com/ElectricRCAircraftGuy/AmboVent/blob/master/3-Software/Arduino/arduino_core/readme.md

<块引用>

这个文件夹里面应该有一个指向你的arduino安装文件夹的符号链接。通过这种方式,例如,Eclipse 项目可以完全访问所有 Arduino 源代码,以便在探索代码时跳转到 Arduino 函数和定义的核心实现。

参考:

  1. 如何在 Windows 中创建符号链接: https://www.howtogeek.com/howto/16226/complete-guide-to-symbolic-links-symlinks-on-windows-or-linux/

如何建立到核心Arduino源代码的符号链接:

1) 要在 Mac 或 Linux 上创建符号链接,命令如下所示。这将在此处创建一个名为“arduino”的符号链接文件夹:

ln -s "/path/to/arduino_installation_folder" arduino

示例:

cd /path/to/here
ln -s "/home/gabriel/Downloads/Install_files/Arduino/arduino-1.8.8" arduino

2) 要在 Windows 上创建符号链接,命令如下所示:

mklink /D arduino "C:\Users\gabriel\Downloads\Install_files\Arduino\arduino-1.8.8" 

关键词:eclipse导入另一个项目;符号链接 Eclipse 项目;将 Arduino 核心符号链接到 Eclipse 中的项目; eclipse 将项目链接到另一个项目 c/c++