35

Windows 7、Eclipse CDT、Juno Service Release 2、交叉编译器。

项目确实编译生成的可执行文件,但 Eclipse 看不到它们;因此“运行”失败。可执行文件放置在 Debug 目录中。双击或命令提示符调用编译的可执行文件没有问题。

在此处输入图像描述

我该如何解决这个问题?

4

16 回答 16

53

这发生在我身上,我找到了一个解决方案,看看这是否适合你:

使用锤子图标构建项目后:

  1. 选择“运行”。
  2. 运行配置。
  3. 选择“C++ 应用程序”。
  4. 单击打开窗口左上角的“新启动配置”图标。
  5. 在 C/C++ 应用程序下选择“浏览”。
  6. 浏览到最初创建项目的文件夹。
  7. 进入调试文件夹。
  8. 单击与项目同名的二进制文件。
  9. 选择“确定”。
  10. 单击“应用”以确认您刚刚设置的链接。
  11. 关闭那个窗口。

之后,您应该能够随心所欲地运行该项目。

希望这对你有用。

于 2014-09-16T23:15:13.263 回答
52

只需选择项目并按CTRL+ B

于 2014-04-27T00:01:37.893 回答
24

我想我找到了解决方案 - 必须选择正确的二进制解析器,以便 Eclipse 可以识别可执行文件:

选择项目,然后右键单击。Project->Properties->C/C++ Build->Settings->Binary Parsers, PE Windows Parser。

即,如果使用 Cygwin 编译器,则应使用 Cygwin 解析器。

这对我来说至少适用于交叉编译器(在 Windows 7 和 Ubuntu 12.04 上)。在 Linux 上,我使用Elf解析器。

如果有人有更好的解决方案,请指教。

于 2013-06-10T12:27:59.450 回答
7

在 Mac 上,如果您也有类似的问题,如上面提到的 Nenad Bulatovic,您需要更改Binary Parsers

Command+I打开属性(或右键单击您的项目并选择属性)

确保选择Mach-O 64 Parser

在此处输入图像描述

于 2015-11-05T05:07:54.227 回答
4

按 ctrl +B 然后您可以使用运行按钮。

于 2018-07-03T06:44:55.087 回答
3

首先我必须点击一个小箭头按钮,打开一个包含“运行配置”的菜单, 在此处输入图像描述

然后在以下窗口中,我必须单击“C/C++ 应用程序”,然后单击一个带有绿色 + 的无文本按钮 在此处输入图像描述

然后我不得不按下“应用”和“运行”按钮 在此处输入图像描述

然后eclipse可以运行/调试程序。:)

于 2018-08-26T17:23:23.840 回答
2

就我而言,这是修复它的解决方案。创建项目时,从 Toolchains 面板中选择 MinGW GCC。

在此处输入图像描述

创建项目后,选择项目文件,按 ctrl + b 构建项目。然后点击运行,输出应打印在控制台上。

于 2016-02-25T08:49:13.287 回答
1

如果你有一个成功的构建,并得到一个“找不到启动二进制文件”错误。尝试执行以下步骤:

单击运行 -> 运行配置 -> C/C++ 应用程序 -> 单击 project_name 调试 -> 单击浏览并选择您的项目文件 -> 按确定 -> 在其下方浏览二进制文件(转到您的 Eclipse 工作区并选择您的项目文件-> 你会找到两个文件 1.Debug 2.Src -> 点击调试文件 -> 下一步点击带有你的项目名称的文件并按下 ok) -> 然后点击应用并按下运行按钮。

这应该可以解决问题

于 2019-06-09T17:24:50.627 回答
1

对于它的价值,我遇到了这个问题 - 原因是所选项目的二进制文件中的 DWARF 3 信息无效(没有任何可运行的二进制文件)。

它的工作方式是这样的:我有两个项目MainLibrary. Main取决于Library项目,前者有一个可执行文件,而后者只生成一个静态库(Main链接到)。

我的运行选项设置为“运行/调试 - >启动”设置设置为“启动当前,否则为最后”,如下所示(见右下角):

运行/调试设置

如果我Main选择了项目,一切都会正常工作:它将启动主项目。如果我让Library项目选择了1,它将因 OP 给出的错误消息而失败。原因似乎是这样的:由于我Library选择了项目,PE扫描仪将扫描项目中的二进制文件以查看是否有可启动的文件,并且由于此错误导致扫描失败,因此错误消息在它得到之前弹出以“启动先前启动的应用程序”。

我可以通过以下方式解决它:

  1. 确保选择了我要启动的项目,或者...
  2. 将编译器更改为生成 Eclipse 可以解析而不会失败的 DWARF 信息的编译器,或者...
  3. 在运行/调试设置中选择“始终启动以前启动的应用程序” - 尽管它可能不是您首选的操作模式。

1我通常不会直接选择项目,当然,它会被间接选择,因为我正在处理它包含的源文件之一。

于 2017-03-01T22:39:16.740 回答
1

这对我有用。

转到项目 --> 属性 --> 运行/调试设置 --> 单击配置并单击“编辑”,现在将打开一个“编辑配置”。

点击“搜索项目”,从“二进制文件”中选择二进制文件,然后点击确定。

注意:在执行所有这些操作之前,请确保您已完成以下操作

--> 执行“Build All”或 (Ctrl+B) 后生成二进制文件

于 2020-06-17T17:31:50.753 回答
1

我的经验是,在构建项目 ( ) 之后,您需要在主工具栏的或下拉菜单CTRL+B中创建运行(或调试)配置。然后在主页面,点击RunDebug

Search Project...

按钮。

这将找到您构建的所有可执行文件并在对话框中显示它们。您可以选择正确的然后点击运行(或

于 2019-01-20T05:55:28.323 回答
0

在尝试了这里的一切之后,对我有用的是授予 eclipse 的执行权限:

cd eclipse-installation-dir 
sudo chmod +x eclipse

在 Ubuntu 12.04 LTS 上使用 Eclipse Luna。

于 2014-11-19T21:19:38.807 回答
0

确保文件夹名称不包含 .c 扩展名。当我删除文件夹名称中的 .c 扩展名时,它会自动工作。

于 2017-09-04T18:22:37.567 回答
0

运行代码时需要点击MinGW编译器。不这样做将导致启动失败二进制文件未找到错误。

于 2018-03-30T21:11:23.240 回答
0

我在 Eclipse 3.8.1 上遇到了同样的问题。对我来说,它可以将工件类型设置为可执行:

右键项目-> C/C++ Build -> Settings -> Build Artifact -> Artifact Type: Executable

最后重建项目会在 Project Explorer 中生成 Binaries 条目。

于 2018-07-18T08:49:11.907 回答
-2

下面的视频链接更详细地说明了这些步骤:

  1. 创建空项目
  2. 选择 linux Gcc 编译器
  3. 右键单击项目选择“源文件夹”
  4. 将其命名为“src”
  5. 右键单击 src 文件夹选择“源文件”
  6. 开始编码
  7. 保存项目
  8. 构建项目
  9. 运行项目

https://www.youtube.com/watch?v=wtyBvagV-_A

于 2017-03-08T23:11:30.603 回答