一个简单的(琐碎的)c++;UNIX上的makefile

一个简单的(琐碎的)c++;UNIX上的makefile,makefile,Makefile,我正在尝试为一个cpp文件创建一个makefile。我尝试过谷歌搜索,但我所看到的例子都没有帮助。。。我打字时总是出错。这是我所拥有的 Interpreter: Interpreter.o g++ -o Interpreter Interpreter.o Interpreter.o: Interpreter.cpp g++ -c Interpreter.cpp 当我输入make时,我得到这个错误。。。“'ake:致命错误:不

我正在尝试为一个cpp文件创建一个makefile。我尝试过谷歌搜索,但我所看到的例子都没有帮助。。。我打字时总是出错。这是我所拥有的

      Interpreter: Interpreter.o
           g++ -o Interpreter Interpreter.o

      Interpreter.o: Interpreter.cpp
           g++ -c Interpreter.cpp
当我输入make时,我得到这个错误。。。“'ake:致命错误:不知道如何生成目标`Interpreter.o”


我哪里出错了?

好的。以下是一些简单的事情:

  • 正如一些注释中提到的,make必须正确命名makefile文件才能找到它。您可以尝试使用
    -f
    标志手动指定它,以验证是否找到了它

  • Make是少数几个空格很重要的语言之一。规则前面不能有选项卡,规则的命令前面都应该有一个选项卡。当我在SO编辑器中检查上面的代码时,看起来您的命令前面有两个选项卡,而不是一个

  • 如果我正确地阅读了这些规则,那么您的工作目录中需要一个名为
    Interpreter.cpp
    的文件才能使其工作。如果你没有那个文件,你会得到一个错误

  • 如果所有其他操作都失败,请尝试使用调试标志(
    -d
    )运行make。这将为您提供更多有关其决策的信息


尝试删除缩进。您如何命名生成文件?尝试
make-f“your makefile”
并检查您是否使用了实际的制表符而不是空格。名称是“makefile”…制表符在makefile中不好吗?make-f makefile不好,制表符好:)事实上,空格不好。目标前面不能有空格或制表符,规则(
g++…
)前面必须至少有一个制表符。