我正在使用cygwin中的gcc编写一个C程序。我的问题是,你如何创建一个makefile?我的意思是,它有什么文件扩展名?我知道如何编写简单的规则,但我无法在文本编辑器中使用正确的扩展名保存文件? 无法找到关于此的任何信息...... 这是一个超级新手的问题。所以让火焰开始吧。 :-P
答案 0 :(得分:15)
当你使用Cygwin时反过来意味着你正在使用GNU make,我引用了relevant portion of the GNU make manual:
3.2为Makefile提供什么名称
默认情况下,当make查找时 makefile,它尝试以下 名称,按顺序:GNUmakefile,makefile 和Makefile。通常你应该打电话 你的makefile要么是makefile,要么是 Makefile文件。 (我们推荐Makefile 因为它显得近在咫尺 目录列表的开头, 就在其他重要文件附近 作为README。)检查的第一个名字, GNUmakefile,不推荐用于 大多数makefile。你应该用它 如果你有一个makefile,请输入名称 特定于GNU make,而不是 其他版本的make理解。 其他make程序查找makefile 和Makefile,但不是GNUmakefile。
[...]
如果要为makefile使用非标准名称,可以使用。指定makefile名称 '-f'或'--file'选项。参数'-f name'或'--file = name'告诉make读取文件名 作为makefile。如果使用多个'-f'或'--file'选项,则可以指定多个选项 makefile文件。所有makefile都按指定的顺序有效连接。默认 如果指定'-f',则不会自动检查makefile名称GNUmakefile,makefile和Makefile 或'--file'。
答案 1 :(得分:10)
makefile的默认文件名是Makefile
;这是GNU Make在没有任何选项的情况下运行时查找的名称。如果需要,-f
参数允许您指定备用文件名。
答案 2 :(得分:1)
它们通常被命名为Makefile
或makefile
。没有延期。但这只是惯例。
编写makefile,查找指南或教程=)
并非易事答案 3 :(得分:1)
在我看过makefile名称上使用的扩展名的几个地方,他们通常都是.make
或.gmk
,即使这样,这些扩展通常也会保留给makefile 片段给定一个默认名称的主文件包含的em>。
答案 4 :(得分:0)
makefile通常名为Makefile
。
答案 5 :(得分:0)
你可以随意命名,但“.mak”看起来是正确的。
... google ... http://msdn.microsoft.com/en-us/library/aa380049%28VS.85%29.aspx ...是的
答案 6 :(得分:0)
Makefile通常没有扩展名。它们通常被称为'makefile'或'Makefile'。有时,当有人编写一组包含彼此的复杂makefile时,包含的文件会获得.mak扩展名,表明它们是makefile文件,即使它们没有被称为'makefile'。
答案 7 :(得分:-1)
打开您喜欢的文本编辑器,并创建一个名为Makefile
的文件。
内容可能会有所不同,但是,如果您有一个名为hello.c
的程序,则编译它非常非常简单Makefile
可能是:
hello: hello.c
gcc -Wall hello.c -o hello.exe
之后,您从cygwin
shell运行
$ ls
hello.c Makefile
$ make
....
您的Makefile
会尝试编译hello.c
。如果一切按预期进行,则可以通过执行以下shell命令来运行hello.exe
程序:
$ ./hello.exe
以下是关于Makefiles的精彩教程。