Eclipse C / C ++(CDT)将文件导入项目 – 未找到头文件 – 包含路径

我正在尝试将文件导入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 

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

迄今为止我找到的所有内容都没有帮助,除了其他方面,在以下位置添加包含路径对我来说不起作用:

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

但是,将include路径添加到:

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

检查’添加到所有语言’确实有效。

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

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

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

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