【问题标题】:Launch Failed: Binary Not Found启动失败:找不到二进制文件
【发布时间】:2017-03-28 11:24:19
【问题描述】:

我在安装了 gcc 编译器的 SUSE 上运行 eclipse。

当我创建新的“Hello World”C++ 项目、清理、构建和运行时,我遇到了“启动失败:找不到二进制文件”。

我尝试设置运行配置却发现没有创建二进制文件,也没有在项目中创建二进制文件夹。

只有来自构建的消息是:

**** Build of configuration Debug for project HelloWorld **** (Cannot run program "make": Unkown reason)

Binary Parser 设置为 Elf。

在 SO 上尝试了所有方法,但均未成功。我唯一能想到的是二进制文件正在其他地方创建....但不知道它可能在哪里。

非常感谢您的帮助。

【问题讨论】:

  • 显然您似乎没有安装 make。你检查了吗?
  • 我不明白?肯定是通过构建可执行文件创建的?这是你的意思吗?
  • 错误信息显示命令make 未找到。你安装了吗?
  • 并不是说找不到make。它说make无法运行。这可能是因为找不到 make,但错误消息非常明确,它不知道为什么 make 不会运行。没有更多信息无法回答这个问题。首先:打开控制台并输入make。运行吗?如果没有检查它是否安装了zypper in make。如果它丢失,这将安装 make。之后重新运行make。如果 make 运行,请尝试再次使用 Eclipse 构建。
  • 推荐浏览一下 C/C++ 开发模式。里面还有其他好东西。如果它们没有附带 GCC,请确保您安装了 GDB 和 Valgrind。它们可以让你的生活变得如此轻松,这太荒谬了。

标签: c++ linux eclipse


【解决方案1】:

尝试重新安装 g++(gcc) 编译器

→如果你使用的是arch linux:

    sudo pacman -S gcc

→如果您使用的是基于 Debian 的发行版(如 Ubuntu、Mint...)

    sudo apt-get install gcc

    sudo aptitude install gcc

→如果您使用的是 OpenSUSE

    sudo zypper install gcc

我忘记如何在 fedora(22+)/RedHat 上安装...

→来自Gcc Wiki

安装完成后,创建一个“helloworld.cpp”文件,然后手动编译,为了测试,在这个文件的同一目录下打开一个终端,然后输入:

    g++ helloworld.cpp -o executable

然后运行它:

    ./executable

如果手动编译有效,而 eclipse 编译无效,请尝试安装 Make(在命令中使用“make”而不是“gcc”)

helloworld.cpp文件,可以有如下代码:

#include<iostream>

 int main()
 {
    std::cout<<"Hello World!"<< std::endl;
    return 0;
 }

【讨论】:

  • 卸载 gcc 后,通过 zypper 重新安装,然后运行 ​​zypper in make 在尝试运行 hello world 时出现以下错误 - /bin/sh: g++: command not found
  • 我已经习惯了在依赖项上“制作”,所以我忘了它'-',我已经编辑了
  • 如果没有找到g++,是gcc安装的问题,试试zypper in gcc(如果你卸载了gcc,可能g++就不行了,需要重新安装)
【解决方案2】:

由于 C++ 编译器安装不正确,我之前遇到过这个问题
在终端中使用这个命令

gcc 中的 zypper

然后再试一次,我确实有这个,所以我终于切换到 Visual Studio 社区 2015,它对我来说很好用

希望对你有帮助

在下方添加链接
http://www.linuxquestions.org/questions/linux-software-2/installing-gcc-on-suse-enterprise-11-a-903014/

【讨论】:

  • apt-get 是 debian。 SUSE 使用 zypper。对于 OP,命令类似于 zypper in gcc
  • apt-get install gcc 是我用的,是不是不对?
  • 当我运行gcc --version 时,我得到gcc (SUSE Linux) 4.8.5
  • 看起来 zypper in make 应该这样做。我想确认一下,但我似乎有一段时间没有启动 SUSE VM 并且软件包工具包正忙于更新。
  • 您已经安装了 GCC。应该不需要重新安装。如果尚未安装,zypper in make 将尝试安装 make,但首先打开控制台并输入 make。如果 make 运行,make 已安装,问题出在其他地方。 apt-get 和 zypper 都是包管理器。他们的工作是确保程序正确安装所有依赖项。
猜你喜欢
  • 2015-11-13
  • 2017-11-16
  • 2015-02-11
  • 2011-12-21
  • 1970-01-01
  • 2016-05-17
  • 2011-11-20
  • 2011-12-11
  • 2015-12-13
相关资源
最近更新 更多