编译以下程序

#include <stdio.h>
int main(void)
{
   printf ("Hello from your first program!\n");
   return 0;
}

a)-使用makefile类型的文件
b)-可执行文件将命名为hello
“请帮忙做个练习。我知道如何在代码块中实现它,但我不知道makefile是什么以及如何在linux中编写它。我用命令“gcc filename.c”编译了它,然后是“../a.out”,但我仍然不明白makefile是什么。它是一种shell脚本,一种指令吗?这个任务的makefile到底是什么样子的?提前感谢:)”

最佳答案

这是一个简单的hello程序生成文件。

CC      = gcc
CFLAGS  = -g
RM      = rm -f


default: all

all: Hello

Hello: Hello.c
    $(CC) $(CFLAGS) -o Hello Hello.c

clean veryclean:
    $(RM) Hello

假设您在一个名为makefilesmakefile.m1的目录中有两个makefile.m2,如果您希望同时构建make文件,请使用以下命令
make -f makefile.m1
make -f makefile.m2

或者使用单个Makefile包含:
m1:
  make -f makefile.m1

m2:
  make -f makefile.m2

使用make m1make m2
现在让我们澄清您对make file的名称的疑问,该文件不需要Makefile
你可以随意命名makefile。假设我想给这个名字命名。要在以后使用它,您需要告诉make您想要什么makefile。使用-f选项:
make -f myfirstmakefile.mk

而且extantionmyfirstmakefile.mk也不是一个管理工具,你可以使用任何你想要的,但是永远不要忘记使用.mk选项。
希望这对你有帮助。

关于c - 如何编写Makefile来编译简单的C程序,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/21548464/

10-11 22:13
查看更多