【问题标题】:Eclipse IDE for C/C++: Binary Not Found, Confusion Around Fix用于 C/C++ 的 Eclipse IDE:找不到二进制文件,在修复方面感到困惑
【发布时间】:2017-02-12 21:09:49
【问题描述】:

版本:Neon.2 版本 (4.6.2)

尝试在 Eclipse 中运行“Hello World”模板时出现错误:Eclipse MinGW Binary Not Found。我从未在 Stack Overflow 或其他任何地方找到解决方案,但在运行程序之前随机尝试单击“项目”>“全部构建”,问题已得到解决。另外奇怪的是您只需单击“全部构建”一次。此后的任何时候,即使更改了代码,您也只需单击“运行”。

我的问题是,是什么让 C++ 的 Eclipse 与 Java 的 Eclipse 不同,您必须在运行之前单击“全部构建”。为什么 Eclipse 不自动执行它?这只是一个错误还是 C++ 的工作方式有根本的不同需要这个?

【问题讨论】:

  • Eclipse 可能找不到mingw 的原因有很多。由于您有一个神奇的修复,听起来 Eclipse 需要更新系统路径。不妨丢掉这部分问题,因为它只会混淆实际问题。

标签: c++ eclipse


【解决方案1】:

对于 C++,“自动构建”默认为关闭,因为构建 C++ 程序可能比您可能熟悉的时间要多得多,而且比修补文件的 Java 字节码要多得多。

我不确定你是否可以再打开它。看起来它已在我的 Eclipse 副本(项目->自动构建)上打开,但 C 或 C++ 项目绝对不尊重它。

为什么 Java 构建比 C 或 C++ 构建快得多? Java 在编译时没有做那么多,因为对于 Java,编译时间的很大一部分是在运行时执行的(或根本不执行),而且很可能只构建一个保存的文件。 C++ 每次都在构建一个完整且可能独立的程序。这是一个关于该主题的好问题:Why does C++ compilation take so long?

【讨论】:

  • 第一次构建后知道为什么它会自动构建吗?
  • @Andrew 无。四处挖掘,我发现项目属性->C/C++->构建行为选项卡->工作台构建类型->在资源保存时构建。我打开它,我得到了 Autobuild。不过要注意这一点。做出正确的模板错误,你会收到很多错误消息,以至于你会坐上很长时间。
猜你喜欢
  • 1970-01-01
  • 2012-09-07
  • 1970-01-01
  • 2013-06-08
  • 1970-01-01
  • 1970-01-01
  • 2010-12-12
  • 1970-01-01
  • 2015-07-09
相关资源
最近更新 更多