【问题标题】:Eclipse C/C++ (CDT) import files into project - header file not found - include pathEclipse C/C++ (CDT) 将文件导入项目 - 找不到头文件 - 包含路径
【发布时间】:2012-01-18 15:54:35
【问题描述】:

我正在尝试将文件导入 Eclipse C 项目并进行编译。构建过程找不到本地头文件。头文件位于 src 目录中。如何在 Eclipse 中编辑包含路径?如果我手动操作,我可以在 gcc 中指定 -I 选项。

Building file: ../src/averaging.c
Invoking: GCC C Compiler
gcc -O0 -g3 -Wall -c -fmessage-length=0 -MMD -MP -MF"src/averaging.d" -MT"src/averaging.d" -o"src/averaging.o" "../src/averaging.c"
../src/averaging.c:2:23: fatal error: averaging.h: No such file or directory
compilation terminated.
make: *** [src/averaging.o] Error 1

【问题讨论】:

  • 你的#include 行是什么样子的?

标签: c eclipse gcc header eclipse-cdt


【解决方案1】:
  1. 右键单击项目并选择属性。
  2. 选择 C/C++ 常规 -> 路径和符号。
  3. 选择包含选项卡。
  4. 在语言列表中,选择“GNU C”或您使用的任何 C 编译器工具链。
  5. 按“添加...”按钮并添加包含文件的目录。
  6. 关闭属性窗口并重建。您应该会在构建过程中看到新路径被用作 -I

【讨论】:

  • 您好,感谢您的回答。添加后它仍然没有拾取包含路径。
  • 没有。我添加了程序集源的路径,当我全部构建时 -I 仍然不存在。
  • 没关系,我将它添加到汇编源代码而不是 GNU C。谢谢您的帮助。
  • 您的代码可以是 C 文件和汇编文件的混合。汇编程序用于将其编译为机器代码。如果您更改程序集源设置,它只会影响程序集文件的编译。
  • 很旧但仍然有用。谢谢哥们。请一分。我不得不一一添加所有文件的链接。但在原始项目中,它会自动获取链接。为什么呢?为了使这项工作,我应该刷新或包含任何路径或链接。包含每个单独头文件的路径似乎有点过头了。
【解决方案2】:

到目前为止,我发现没有任何帮助,除其他外,在以下位置添加包含路径对我工作:

  • 项目 -> 属性 -> C/C++常规 -> 路径和符号 -> 包含选项卡 -> GCC C
  • 项目 -> 属性 -> C/C++常规 -> 路径和符号 -> 包含选项卡 -> GCC C++
  • 项目 -> 属性 -> C/C++build -> 设置:工具设置选项卡 -> GCC C++ 编译器 -> 包含
  • 项目 -> 属性 -> C/C++build -> 设置:工具设置选项卡 -> GCC C 编译器 -> 包含

但是,将包含路径添加到:

项目 -> 属性 -> C/C++常规 -> 路径和符号 -> 包含 选项卡 -> 装配

在检查“添加到所有语言”时确实有效。

奇怪的是,最后一个选项可以完成上述所有操作 - 我不清楚为什么它们不能自行工作。

这是假设您不使用 makefile。如果你这样做了,那么你可以忘记上面列出的更改。 Eclipse 将通过分析编译器日志自动找到所有需要输入的位置。我认为这很神奇,但它的工作方式如下:

  • 从项目菜单中构建全部 - 即使成功,由于未知符号等原因,您的某些文件可能会标记为“错误”,因此您必须执行第二步:
  • 更新索引:在项目窗口中右键单击并选择“属性->索引->重建。如果项目很大,您将在eclipse窗口的右下角看到进度。

我认为上述过程可以通过不同的方式完成,eclipse 也可以自己完成,但对于大型项目,我发现如上所述的手动处理不太分散注意力。

【讨论】:

  • 如果您在 Assembly 与 C/C++ 下的设置有冲突:我怀疑索引器首先使用这些设置解析那些包含文件 - 这些设置包含保护变量!然后当它为 C/C++ 处理时,已经设置了包含保护,所以你看不到你所期望的。
【解决方案3】:

Alt + Enter 用于打开属性。

打开 C/C++ 常规 -> 路径和符号 -> 包含 -> 添加...

请注意,有时您需要选择“是工作区路径”(例如:用于链接文件夹)。

【讨论】:

    【解决方案4】:

    1.点击你的源文件夹

    2.选择“新建”

    3.下一步选择“头文件”

    4.给一个适当的名称,扩展名为“.h”(例如:header.h)

    5.然后选择“完成”

    6.然后创建你的函数

    7.保存你的“header.h”文件

    8.然后从控制台顶部选择“项目”

    9.选择“全部构建”

    10.然后打开你的“.c”文件

    11.写#include"header(见步骤4).h"使用头文件

    12.按照步骤 7 到 9

    13.然后点击控制台顶部的“运行”

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2012-03-24
      • 2014-08-28
      • 2018-01-19
      • 2016-10-22
      • 2012-03-28
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多