如何为minGW + fortran创建一个简单的makefile

时间:2011-03-16 21:36:22

标签: makefile gfortran

我是gfortran + minGW的新手。 我需要创建makefile。 我跑的时候

$ gfortran  -c q.f

一切都好! 但是我怎么能像这样运行makefile呢?

CC = gfortran 
q.o :  q.f 
        $(CC) -c q2.o q2.f

我收到错误“CC:找不到命令”。

(OS - Win 7(64)) 坦克!!!

1 个答案:

答案 0 :(得分:2)

看起来你正试图将makefile作为常规脚本运行。尝试

 $ make

 $ make -f mymakefilename

如果您将文件命名为“makefile”或“Makefile”以外的其他文件。

可能可能只是执行makefile,但如果是这样你需要一个“shebang”行,比如

 #!/usr/bin/make

位于文件顶部,但坦率地说,几乎没有人使用该选项。只需使用 make(1)命令。

<强>更新

这是因为他们的顺序错了。 Makefile处理(默认情况下)文件中的第一个目标。当你运行make时,它会从q.o看到要生成的规则q.f,它会编译它,然后说:“好的,我已经完成了。”

如果你把q.exe目标放在第一位,就说“嗯,我想要建立q.exe并且这样做我需要一个qo我有一个qo吗?不是吗?好吧,我会建立一个qo我有一个规则 - 我可以从qf建立一个qo好了,已经完成了。现在我可以构建q.exe吗?哦,是的,我可以。我将构建q.exe。有什么吗?不,我“完成了。”

如果您要使用推荐

  $ make q.exe

然后你明确地告诉make制作q.exe,这会导致同样的事情发生,但更好的是你应该重新排序你的makefile并习惯它们的工作方式。