【问题标题】:First C programm - need help with eclipse第一个 C 程序 - 需要 eclipse 帮助
【发布时间】:2013-08-05 17:47:39
【问题描述】:

我已经安装了 C/C++ CDT 版本的 Eclipse。创建 HelloWorld.c 文件并获取其中的代码后,我收到“启动失败。找不到二进制文件”的错误。

我在 google 中发现我的 Eclipse 错过了编译器,我在我的计算机上安装了 MinGW 并添加了 env 变量的路径(在 cmd 中使用“gcc -v”对其进行了测试并成功)。

1) 我现在可以构建,但不知道如何制作 MAKEFILE。 - 我阅读了 10 篇教程但不理解 - 想法?

2) 我可以构建,但不能运行,我得到“启动失败。找不到二进制文件” - 想法?


发现错误:重命名后我从未制作过“.c”文件 -.- - 工作正常。

【问题讨论】:

    标签: c eclipse


    【解决方案1】:
    1. 修改后的答案:如果你想避免写一个真正的makefile,你可以这样写:

      all:
          gcc *.c -o runme.exe
      
    2. 您需要在运行设置中指定 gcc 输出的二进制文件 (gcc [..] -o <this one>)(在前面的示例中,它应该指向 runme.exe)。转到Run->Run Configurations,然后在C/C++ Application 下浏览并查找runme.exe

    不过,我强烈建议您认真学习 makefile。 makefile 的美妙之处在于,一开始您可以使用很少的功能,然后随着您的使用越来越多(如您所见,编写“虚拟”文件非常快)。一开始我建议你写一些比我上面给你的更“聪明”的东西。 Here's a nice tutorial 和一个例子:

    all: hello
    
    hello: main.o factorial.o hello.o
        g++ main.o factorial.o hello.o -o hello
    
    main.o: main.cpp
        g++ -c main.cpp
    
    factorial.o: factorial.cpp
        g++ -c factorial.cpp
    
    hello.o: hello.cpp
        g++ -c hello.cpp
    
    clean:
        rm -rf *o hello
    

    all 是默认编译的。 : 之前的是规则名称,之后是依赖项。即,要编译all,您需要编译hello(尽管只有在它被更新的情况下),等等。规则下面的行是要编译的命令。我希望这有帮助。请阅读教程,Makefile 很重要。

    【讨论】:

    • 1) 怎么样? 2)不明白,请对初学者温柔
    • @Amir Rachum:学习 makefile 总是一个好主意,但通常 Eclipse 会为您编写 makefile。
    • @Philipp 恕我直言,当项目足够大时,Eclipse 的 makefile 管理可能不够。
    • 我遇到了类似的问题,makefile 是无关紧要的。从命令行构建良好,在 Eclipse 中构建良好,但是当我尝试运行时得到的只是相同的“启动失败。找不到二进制文件”错误。我已经使用 makefile 生成的二进制文件的完整路径设置了运行和调试配置。我可以将该完整路径粘贴到终端中,它运行得很好。
    • @James,我认为您应该发布一个关于此的新问题。然后你可以在评论中发布它,我会看看。
    【解决方案2】:

    将 gcc 所在的目录(C:\MinGW\bin 或其他)添加到您的 PATH 环境变量并重新启动 Eclipse(重要!)。这是 XP 中的过程:http://vlaurie.com/computers2/Articles/environment.htm。那应该解决了。

    【讨论】:

      【解决方案3】:

      1我建议你看看这个:

      http://www-scf.usc.edu/~csci410/handouts/make.pdf

      这是一个基本的 gmake 教程,应该足以让您入门。但是现在,对于单文件项目,我建议您跳过创建 Makefile 并在命令提示符下执行:

      gcc -o helloworld.exe helloworld.c

      并在提示符下运行您的可执行文件。您可以在以后的学习过程中担心 Makefile。

      2您是如何设置项目的?

      【讨论】:

      • 1) 谢谢 - 我可以在 Eclipse 中找到命令提示符,但我没有找到。 2) 制作 C 项目 -> 制作 C 源代码 -> 使用 printf() 的主方法 -> 构建
      【解决方案4】:

      确保在调出项目属性时选择了二进制解析器。至少在我的安装中,默认情况下没有检查。我需要检查 Mach-O 64 解析器;你需要根据你正在做的事情来选择一个。这是我从http://www.thexploit.com/tools/os-x-10-6-64-bit-eclipse-cdt-missing-binaries/ 那里得到的

      我没有选择二进制解析器,这似乎意味着 CDT 找不到任何它识别为二进制的东西。在我的情况下,这意味着我刚刚收到“启动失败。找不到二进制文件”消息,即使我在运行/调试配置中指定了确切的二进制文件,包括完全限定的路径。

      这与构建无关,只是运行/调试。如果您在构建时遇到问题,这可能无关紧要。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2021-07-04
        • 2014-08-27
        • 1970-01-01
        • 1970-01-01
        • 2011-09-11
        • 1970-01-01
        • 2011-05-10
        • 2021-05-30
        相关资源
        最近更新 更多