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

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

本文关键字:另一个 项目 文件 包含 CDT C++ Eclipse      更新时间:2023-10-16

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

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

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

我可以通过在 mainproperties->C/C++ Build->Setting->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,单击"文件"--">导入">,然后选择"常规/现有项目进入工作区"。选择在第一步中创建的文件夹,您的项目就可以在 eclipse 中使用了。

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

干杯!

如何使用符号链接将 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:UsersgabrielDownloadsInstall_filesArduinoarduino-1.8.8" 

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

相关文章: