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

html 网站新功能介绍疫情防控最新数据

html 网站新功能介绍,疫情防控最新数据,WordPress国外打赏,深圳人才网招聘官方网makefile基本概念 Makefile 本质上是一个文本文件,它包含了一系列规则和指令,用于告诉构建工具(如 make)如何编译和链接程序,以及如何处理项目中的各种文件。其核心思想是通过定义目标(target)…

makefile基本概念

Makefile 本质上是一个文本文件,它包含了一系列规则和指令,用于告诉构建工具(如 make)如何编译和链接程序,以及如何处理项目中的各种文件。其核心思想是通过定义目标(target)、依赖关系(dependencies)和生成目标的命令(commands),来实现项目的自动化构建。

makefile编写

makefile文件编写,就是要明确基础格式如下:

目标:依赖
(tab键)命令

举个具体的小例子:

main:main.c add.c
# 使用gcc编译器将main.c和add.c这两个源文件进行编译和链接操作,
# 最终生成一个名为main的可执行文件。gcc -o main main.c add.c

严格按照上述的基础格式写,但是这里有一个问题:如果我们得更新add.c中的代码,相应的两个文件都得重新先.c文件编译生成.o文件,再由.o文件链接成linux操作系统的可执行文件,如果一个大工程有上百个文件这样的代码处理起来太过于冗余。所以我们可以把每个文件的编译过程拆开。

第一版本

main:main.o add.o# 链接命令,将 main.o 和 add.o 链接生成可执行文件 maingcc main.o add.o -o main
main.o:main.c# 编译命令,将 main.c 编译为目标文件 main.ogcc -c main.c -o main.o
add.o:add.c# 编译命令,将 add.c 编译为目标文件 add.ogcc -c add.c -o add.o

上述写法,当更新 add.c 文件时,确实能够更智能地处理编译和链接过程,避开第一个版本的一些缺点,就不必重复重新执行gcc -c main.c -o main.o这条指令。

但是,Makefile有相应的语法规则,帮助我们写出更加简洁的代码;
比如,

  1. 我们可以自定义变量,a = b,$(a)来替代b;
  2. $<就对应着 “依赖文件列表” 中的第一个文件;
  3. $@就对应着"目标文件";
  4. gcc 可以用专门符号$(CC)表示;
  5. 而且类似的func.o: func.c这种.o和.c转换的语句太过于冗余,这里可以使用%.o:%.c去替代所有当前文件夹下.c文件编译得到.o文件
  6. $^表示当前规则的所有依赖文件,以空格分隔。如果依赖文件中有重复的,重复的文件只会出现一次。

所以根据上述规则,假设main用target代替,main.o add.o用object替换,我们可以得到下面的版本。

第二版本

 target=mainobject=main.o add.oCC=gcc$(target):$(object)$(CC)  -o $@ $^%.o:%c$(CC) -c $<

得到上述版本,已经非常简洁了,但是还是有个问题,我们想要得到的是Linux可执行文件main,中间还生成了.o文件,所以我们还可以更精益求精些,删除这些中间文件。

第三版本

 target=mainobject=main.o add.oCC=gcc$(target):$(object)$(CC)  -o $@ $^%.o:%.c$(CC) -c $< 
clean:rm -f $(object)

最后这个版本就可以利用简洁代码实现,main.c add.c文件编译链接生成可执行文件main,并且删除中间生成的冗余文件

http://www.dt0577.cn/news/10691.html

相关文章:

  • 提高网站排名网站怎么被百度收录
  • 企业展示型网站源码网络优化需要哪些知识
  • 浙江温州乐清疫情最新消息临沂seo推广外包
  • 做网站能挣钱么网站关键词快速排名工具
  • 南宁网站推广哪家好网站seo工具
  • 济南网站APP如何在百度发视频推广
  • 潍坊青州网站建设seo人工智能
  • 前端网站建设和维护网络推广渠道和方式
  • wordpress产品发布插件seo专员是指什么意思
  • 怎么做网站备案国际新闻最新消息中国
  • 网站开发的运行可行性淘宝代运营公司
  • 美工做网站怎么收费深度优化
  • 哪个网站可以宣传做的蛋糕百度站内搜索代码
  • 怎样做网站卖东西 自己有货北京seo怎么优化
  • 成都网站定制中心吉安seo网站快速排名
  • 兼职网站推广如何做平台关键词排名优化
  • 网站组成百度账号注册入口
  • 武汉教育网站建设公司以网红引流促业态提升
  • 建设淘宝网站的意义软文推广方案
  • 企业网站空间在哪里做网站的网络公司
  • 武汉最近新闻大事seo信息优化
  • 平台网站如何做推广方案重庆网站网络推广
  • 自己做网站还是用别人网站自媒体发布平台
  • 企业网站开发实训目的网络平台推广
  • 北京网站sem、seo湖北网站推广
  • 南昌网站搜索排名关键词营销推广
  • 北京小程序制作公司论坛seo设置
  • 制作一个网站需要多长时间网络公司关键词排名
  • 秦皇岛做网站网络推广产品公司
  • 小型crm系统什么是seo什么是sem