如果你要用C语言,就用Make吧

概述

这里提到的Make是GNU Make。
在Mac OS X上安装命令行工具时,或者在Linux上运行make命令时,GNU Make应该被调用。

编译hello.c-编译一个源文件

例如,您可以考虑创建并运行以下名为hello.c的C语言源文件。

#include <stdio.h>

int main() {
    puts("hello, world!");
    return 0;
}

通常,您将使用以下命令编译并创建可执行文件hello。

$ cc -o hello hello.c
$ ./hello
hello, world!

但是,(GCC等一起GNU Make被安装的前提)hello.c文件的制作以外的其他准备,而是以下的命令编译可以。

$ rm -f hello
$ make hello
cc     hello.c   -o hello
$ ./hello
hello, world!

hello部分根据原始.c文件的名称进行描述。
Make反映了多年来在C语言编译中使用的历史,并支持各种模式的编译。
编译扩展名.c的文件,除了扩展名之外,包含创建同名文件的规则,只需make hello就可以编译,这也是它的表现。

创建Makefile

省略make hello的hello。
输入make hello很麻烦,如果你想用make编译,请在与hello.c相同的目录中创建Make配置文件Makefile。

CC := gcc
CFLAGS := -g -Wall -Wextra

hello:

clean:
    $(RM) hello

此时,运行make clean和make如下所示。

$ make clean
rm -f hello
$ make
gcc -g -Wall -Wextra    hello.c   -o hello

小提示
利用Makefile进行make时,“Makefile:8: *** missing separator. Stop.”出现时的应对方法
在这种情况下,原因是在最后一行的开头使用空格。
将空格更改为TAB即可解决。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值