我已经安装了Eclipse的C / C ++ CDT版本。制作一个HelloWorld.c文件并获取代码后,我收到错误“启动失败。找不到二进制文件”。
我在google中发现我的Eclipse错过了编译器,我在计算机上安装了MinGW并添加了env变量的路径(在cmd中用“gcc -v”测试并成功)。
1)我现在可以构建,但不知道如何制作MAKEFILE。 - 我阅读了10篇教程但却不理解 - 想法?
2)我可以构建,但不能运行,我得到“启动失败。未找到二进制” - 想法?
发现错误:重命名后我从未制作过“ .c”文件-.- - 工作正常。
答案 0 :(得分:3)
修改后的答案:如果你想避免编写一个真正的makefile,你可以这样写:
all:
gcc *.c -o runme.exe
您需要在运行设置中指定gcc输出的二进制文件(gcc [..] -o <this one>
)(在上一个示例中,它应指向runme.exe
)。转到Run
- &gt; 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
,您需要编译hello
(尽管只有在更新后),等等。规则下面的行是编译命令。我希望这有帮助。请阅读教程,Makefile非常重要。
答案 1 :(得分:1)
将gcc所在的目录(C:\ MinGW \ bin或其他)添加到PATH环境变量中,然后重启Eclipse(重要!)。这是XP中的过程:http://vlaurie.com/computers2/Articles/environment.htm。这应该解决。
答案 2 :(得分:1)
1 我建议你看看这个:
http://www-scf.usc.edu/~csci410/handouts/make.pdf
这是一个基本的gmake教程,应该足以让你入门。但是现在,对于单个文件项目,我建议你跳过创建Makefile并在命令提示符下执行:
gcc -o helloworld.exe helloworld.c
在提示符下运行可执行文件。您可以稍后在学习曲线中担心Makefile。
2 您是如何设置项目的?
答案 3 :(得分:0)
确保在调出项目属性时选择了二进制解析器。至少在我的安装中,默认情况下都没有选中。我需要检查Mach-O 64解析器;你需要根据你正在做的事情选择一个。我从http://www.thexploit.com/tools/os-x-10-6-64-bit-eclipse-cdt-missing-binaries/
中选择了这个我没有选择二进制解析器,这似乎意味着CDT无法找到它识别为二进制文件的任何内容。这意味着在我的情况下,我刚刚获得了“启动失败。未找到二进制”消息,即使我在运行/调试配置中指定了确切的二进制文件,包括完全限定的路径。
这与构建无关,只是运行/调试。如果您在构建问题时,这可能无关紧要。