6

我已经从这里下载了 Eclipse Juno for C++ 。我正在尝试构建一个简单的 hello world 程序(主要是为了使用 eclipse 进行 C++ 测试),但我无法构建和运行它。这是我的代码:

#include <iostream>
using namespace std;

int main() {
    cout << "hello" << endl;
    return 0;
}

问题选项卡显示

make: *** No rule to make target `all'.

我只能假设发生这种情况是因为 eclipse 未配置为找到我的编译器(g++用于 archlinux),但我不知道如何修复它。理想情况下,我希望能够像在 Java 中一样轻松地使用 Eclipse 进行 C++ 编程(即编写代码、构建和运行)。

4

2 回答 2

4

Makefile 是一个文件,用作从命令行构建项目的“映射”(或在您的情况下使用 IDE)。使用 Makefile 编译由许多文件组成的复杂项目是一种很好的做法,因为可以使用或不使用 IDE(在您的情况下为 Eclipse)进行编译。要在 Eclipse 之外编译您的项目,只需从命令行键入“make”。

在您的情况下,您以某种方式选择了使用 makefile 编译的选项(我认为这个选项是最好的)。

要从这一点解决您的问题(无需重新创建项目),只需在您的项目中添加一个空白文件:

文件->新建->其他
展开“常规”并选择“文件”

将其命名为“Makefile” (输入此名称很重要)(我假设您的源代码存储在名为“main.cpp”的文件中,并且您的可执行文件将被称为“hello”) (我还假设 g++已安装在您的系统上,因为某些 Linux 发行版仅预装了 gcc)

使用以下内容编辑文件“Makefile”(如果您愿意,可以在同一个 Eclipse 中):(尊重选项卡很重要!)

all: main.o
     g++ -o hello main.o

main.o: main.cpp
     g++ -c main.cpp

clean:
     rm *.o

现在,当您编译您的项目时,您应该会看到如下内容:(在“控制台”选项卡中)

make all
g++ -c main.cpp
g++ -o hello main.o

这是您可以为您的项目创建的最简单的 Makefile。网上有很多关于 Makefile 语法的帮助,可用于更复杂的构建。

于 2012-12-28T16:58:29.730 回答
3

按照这个:创建新的 C++ 项目。比在项目类型中选择 Executable -> Hello world。

于 2012-07-24T22:05:03.213 回答