$@    目标文件名

$< 第一个依赖文件名

$^ 规则所有依赖文件列表

如果不想让执行语句被打印出来,就在语句前面加上@符号

模式规则

%.o:%.c

后缀规则

.c.o

生成单进程的Makefile

PHONY:clean

OBJECTS = main.o add.o sub.o
CFLAGS = -Wall -g
CC = gcc

app:$(OBJECTS) 
$(CC) $(CFLAGS) $^ -o $@

%.o:%.c
$(CC) $(CFLAGS) -c $< -o $@

clean:
rm -f *.o app

生成多进程的Makefile

.PHONY:clean all

BIN=test1 test2
CFLAGS=-Wall -g
CC=gcc

all:$(BIN)

test1:test1.o
        $(CC) $(CFLAGS) $^ -o $@

test2:test2.o
        $(CC) $(CFLAGS) $^ -o $@

%.o:%.c
        $(CC) $(CFLAGS) -c $< -o $@

clean:
        rm $(BIN) *.o

makefile 基础知识的更多相关文章

  1. 5、Makefile基础知识汇总(转自陈皓总述)

    一.Makefile里有什么? Makefile里主要包含了五个东西:显式规则.隐晦规则.变量定义.文件指示和注释. 1.显式规则.显式规则说明了,如何生成一个或多的的目标文件.这是由Makefile ...

  2. 【分享】4412开发板-嵌入式Linux开发须要掌握的基础知识和技能

    本文转自迅为电子论坛:http://www.topeetboard.com 1.Linux 基础 安装Linux操作系统 Linux文件系统 Linux经常使用命令 Linux启动过程具体解释 熟悉L ...

  3. Makefile基础学习

    Makefile基础学习 理论知识 makefile关系到了整个工程的编译规则.一个工程中的源文件不计其数,并且按类型.功能.模块分别放在若干个目录中,makefile定义了一系列的规则来指定,哪些文 ...

  4. 1)Linux程序设计入门--基础知识

    )Linux程序设计入门--基础知识 Linux下C语言编程基础知识 前言: 这篇文章介绍在LINUX下进行C语言编程所需要的基础知识.在这篇文章当中,我们将 会学到以下内容: 源程序编译 Makef ...

  5. (转)Linux基础知识学习

    Linux基础知识学习 原文:http://blog.csdn.net/ye_wei_yang/article/details/52777499 一.Linux的磁盘分区及目录 Linux的配置是通过 ...

  6. 嵌入式Linux基础知识

    一.构建嵌入式开发环境 1.编译bootloader并烧写到板子中---uboot, 可以自己定制bootloader and logo 2.编译file system 并烧写--内嵌APP 3.编译 ...

  7. linux内核(一)基础知识

    1,linux内核的基础知识 1.1 linux内核版本 从内核源码顶层目录Makefile中可以看到: VERSION和PATCHLEVEL组成主版本号,比如2.4.2.5.2.6等,稳定版本的德主 ...

  8. [转] linux操作系统下c语言编程入门--基础知识

    点击阅读原文 这篇文章介绍在LINUX下进行C语言编程所需要的基础知识.在这篇文章当中,我们将会学到以下内容: 1. 源程序编译        2. Makefile的编写        3. 程序库 ...

  9. kubebuilder实战之三:基础知识速览

    欢迎访问我的GitHub https://github.com/zq2599/blog_demos 内容:所有原创文章分类汇总及配套源码,涉及Java.Docker.Kubernetes.DevOPS ...

随机推荐

  1. Power Designer体验之旅

    版权声明:本文为博主原创文章.未经博主允许不得转载. https://blog.csdn.net/wang13667539325/article/details/36025245 从某种程度上说.不论 ...

  2. win8 office 2013激活方法

    先在用win8的人越来越多了,可是某些软件对win8不太友好(也可以说是win8对某些低版本软件不友好),office注册软件office toolkit就是,我在win7上使用2.4.1版本没有问题 ...

  3. CodeBackUP_node_find_serial

    /*************************************************************** ** Find the serial number Node ** R ...

  4. 《程序员代码面试指南》第二章 链表问题 删除中间节点和a/b处节点

    题目 例如 1-2-3-4 删除2,1-2-3-4-5 删除3 例如 a=1,b =2 java代码 /** * @Description:删除中间节点和a/b处节点 * @Author: lizho ...

  5. 【leetcode刷题笔记】Triangle

    Given a triangle, find the minimum path sum from top to bottom. Each step you may move to adjacent n ...

  6. 【leetcode刷题笔记】Sort List

    Sort a linked list in O(n log n) time using constant space complexity. 题解:实现一个链表的归并排序即可.主要分为三部分: 1.找 ...

  7. hd acm2035

    求A^B的最后三位数表示的整数.说明:A^B的含义是“A的B次方” 思路:后三位只跟后三位相乘有关,所以可以每乘一次都对1000取余. 代码: #include <stdio.h>#inc ...

  8. OC实现将N个数随机排列

    + (NSMutableArray *)randArray : (NSMutableArray *)arrayM { NSMutableArray *resultM = [[NSMutableArra ...

  9. 初步了解Spark生态系统及Spark Streaming

    一.        场景 ◆ Spark[4]: Scope:  a MapReduce-like cluster computing framework designed for low-laten ...

  10. Codeforces 897C Nephren gives a riddle:模拟【珂学】

    题目链接:http://codeforces.com/contest/897/problem/C 题意: 给你一些字符串: A: [What are you doing at the end of t ...