当前位置: 首页 > news >正文

第一期第16讲,17讲21:50

1. Makefile文件规则:

目标文件:依赖文件

        命令

例如:Makefile文件如下:

main: main.o calcu.o input_num.o

        gcc -o main main.o calcu.o input_num.o

main.o: main.c

        gcc -c main.c

calcu.o: calcu.c

        gcc -c calcu.c

input_num.o: input_num.c

        gcc -c input_num.c

clean:

        rm *.o 

        rm main

输入make,默认在本文件夹下搜寻Makefile文件执行。终端窗口会显示执行到的命令。

输入make clean,清除*.o和main文件

2. Makefile变量:类似C语言中的宏,可认为是字符串类型

 注释以#开始

objects = main.o calcu.o input_num.o

main: $(objects)                           # $表示使用该变量

        gcc -o main $(objects)

“=”赋值:name变量的值取决于最终的赋值

name = zzk

curname = $(name)

name = zuozhongkai

print:

        @echo curname: $(curname)         # @表示不打印命令执行过程

shell输入make print, 显示出zuozhongkai

“:=”赋值:

name = zzk

curname := $(name)

name = zuozhongkai

print:

        @echo curname: $(curname)         # @表示不打印命令执行过程

shell输入make print, 显示出zzk

"?="赋值:如果变量之前没有被赋值,当前赋值有效,否则仍是之前的值有效 

name = zzk

curname ?= zuozhongkai

name = zuozhongkai

print:

        @echo curname: $(curname)         # @表示不打印命令执行过程

shell输入make print, 显示出zuozhongkai

"+=" 就是追加内容 

相关文章:

  • 淘宝商品搜索爬虫:Python 实现教程
  • Animated Raindrop Ripples In HLSL
  • Ext系列⽂件系统
  • C语言---FILE结构体
  • 21【干获】如何用GIS快速统计每种地类面积?
  • 梯度下降代码
  • yaffs_write_new_chunk()函数解析
  • canal安装使用V1.1.4
  • 解决:QTcpSocket: No such file or directory
  • 汉诺塔专题:P1760 通天之汉诺塔 题解 + Problem D: 汉诺塔 题解
  • 串口通信实战:从寄存器操作到数据处理的完全指南
  • 快速上手Linux磁盘管理
  • Shell脚本-变量是什么
  • Docker中镜像、容器、仓库三者之间的关系
  • 【我的创作纪念日】回望初心,分享收获,展望前行
  • 追赶地球变化的“快镜头“:遥感时间分辨率的奥秘
  • 【信息系统项目管理】资源管理
  • 使用Gone MCP 组件编写MCP Server
  • 前端服务器部署报错记录
  • SpringBoot项目异常处理
  • 林间徐行寻风眠——关于浙美“徐宗帅捐赠纪念展”
  • 推动中阿合作“向新而行”,这场论坛在上海松江举行
  • 融创中国披露二次境外债重组方案:总规模约95.5亿美元债全额转股权,孙宏斌部分受限股票6年内不得处置
  • 乌克兰和美国签署关于矿产协议的备忘录
  • 在这些书里,每一种人生都值得认真过
  • 春日有滋味 | 蚕豆、春笋、喉黑鱼和活麻