ICode9

精准搜索请尝试: 精确搜索
首页 > 系统相关> 文章详细

Linux系统编程 35 -makefile基础规则

2021-12-12 16:05:39  阅读:159  来源: 互联网

标签:gcc make Linux makefile 35 规则 include hello


Linux系统编程 35 -makefile基础规则

学习笔记

脚本:把一些列命令集合放在一个文件中,批量执行。


makefile的知识点初期入门
1个规则
2个函数
3个自动变量


规则

若想生成目标,检查规则中依赖是否存在,如不存在,
则寻找是否有规则用来生成该依赖文件


目标: 依赖条件
    (一个tab缩进)命令

    
    
一个tab缩进,不能多也不能少
1.目标
2.依赖条件
3.命令
这三部分称之为一个规则

$cd 35maketest/
$ls
hello.c
$cat hello.c
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
#include<unistd.h>
#include<pthread.h>

int main(int argc, char *argv[])
{

    return 0;
}

makefile的命名有两种
1.$touch makefile
2.$touch Makefile

$cat makefile
hello:hello.c
    gcc hello.c -o hello

输入make

$make
gcc hello.c -o hello
$ls
hello  hello.c  makefile


,如不存在,
则寻找是否有规则用来生成该依赖文件
这句话的理解


gcc 编译有四步
gcc -c hello.c -o hello.o
gcc hello.o -o hello

$cat makefile 
hello:hello.o
    gcc hello.o -o hello.out
hello.o:hello.c
    gcc -c  hello.c -o hello.o

make 是一个命令工具,它解释 Makefile 中的指令(应该说是规则)。
在 Makefile文件中描述了整个工程所有文件的编译顺序、编译规则。

$make
gcc -c  hello.c -o hello.o
gcc hello.o -o hello.out
$./hello.out 
$


 

标签:gcc,make,Linux,makefile,35,规则,include,hello
来源: https://blog.csdn.net/sinat_36070482/article/details/121888703

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有