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

网站优化要多少钱物联网平台是干什么的用的

网站优化要多少钱,物联网平台是干什么的用的,广州市地图最新版 高清晰,设计网页代码流程目录 引言 一、make与Makefile概述 1.1 背景 1.2 理解 二、make工作原理 2.1 查找Makefile 2.2 确定目标文件 2.3 处理文件依赖 三、Makefile实例分析 3.1 简单C程序示例 3.2 项目清理机制 四、结合行缓冲区概念的有趣现象 五、结语 引言 在Linux软件开发的世界里…

目录

引言

一、make与Makefile概述

1.1 背景

1.2 理解

二、make工作原理

2.1 查找Makefile

2.2 确定目标文件

2.3 处理文件依赖

三、Makefile实例分析

3.1 简单C程序示例

3.2 项目清理机制

四、结合行缓冲区概念的有趣现象

五、结语


引言

在Linux软件开发的世界里, make 和 Makefile 是一对强大的搭档,它们承担着项目自动化构建的重任。熟练掌握如何编写 Makefile ,从某种程度上反映了一个开发者是否具备处理大型工程项目的能力。本文将深入剖析 make 和 Makefile 的原理与应用,同时结合实际代码示例进行讲解。

一、make与Makefile概述

1.1 背景

一个大型工程中,源文件数量众多,且依据类型、功能、模块等分布在不同目录。 Makefile 的出现,就是为了定义一系列规则,明确哪些文件需先编译、哪些后编译、哪些要重新编译,甚至执行更复杂的操作。 make 则是一个命令工具,专门解释 Makefile 中设定的指令。常见的IDE,如Delphi的 make 、Visual C++的 nmake 、Linux下GNU的 make ,都支持这一编译方式。二者配合,实现项目自动化构建,极大提升软件开发效率。

1.2 理解

以一个简单的依赖关系为例, gcc hello.* -option hello.*  就体现了文件之间的编译依赖。 make 在执行时,会按照特定逻辑处理这种依赖关系。

二、make工作原理

2.1 查找Makefile

当我们在命令行输入 make 命令时, make 首先会在当前目录下寻找名为“ Makefile ”或“ makefile ”的文件。若找不到,构建过程终止。

2.2 确定目标文件

若找到 Makefile , make 会定位文件中的第一个目标文件(target)。例如在常见的示例中,“ hello ”常作为第一个目标文件,被当作最终构建目标。

2.3 处理文件依赖

- 目标文件不存在或依赖文件更新:如果 hello 文件不存在,或者 hello 所依赖的文件(如 hello.o )的修改时间比 hello 文件新(可用 touch 命令测试文件时间) , make 会执行后续定义的命令来生成 hello 文件。

- 依赖文件缺失处理:若 hello 依赖的 hello.o 文件不存在, make 会在 Makefile 中查找构建 hello.o 的依赖规则,然后依据规则生成 hello.o 。这一过程类似堆栈操作,层层递进,直至找到最基础的文件依赖并完成构建。

- 构建过程中的错误处理:在查找依赖关系过程中,若找不到最终被依赖的文件, make 会直接退出并报错;但对于命令本身的错误或编译不成功等情况, make 不会主动处理,它只关注文件的依赖关系。若依赖关系处理完后,目标文件仍未生成, make 就停止工作。

三、Makefile实例分析

3.1 简单C程序示例

下面是一个简单的C程序:

对应的 Makefile 文件内容如下:

i这里定义了从test.c 文件逐步生成可执行文件test的过程,每一步都明确了依赖关系和编译命令。

3.2 项目清理机制

在项目开发中,清理已生成的目标文件很重要,以便重新编译。 Makefile 中可这样设置:

系统通过比较文件编译时间(文本属性变化时间)变化(时间转化为时间戳)来判断文献是否重新编译

-exe 新于  .c源文件是老的,不需要重新编译

-exe 老于  .c源文件是老的,需要重新编译

-exe==.c一般不会(通常比较modify

通过stat获取文件编译发生时间:

但是modify与change不一定同时改变,access可能在用户访问多次后改变(提升效率)

也可通过touch test.c 直接改变

如果想要多次make 则加.PHONY:(依赖关系)

之后可多次make,但是.PHONY+test意义不大,基b于历史源文件编译通常不尽人意,会强制程序员删除源代码,又因为clean中可添加其他可执行程序,因此建议PHONY+clean

另外哪段代码在前面,make执行时,运行的就是该代码段。

特殊符号

$@==:左侧内容    $^==:右侧内容

@

像 clean 这种未与第一个目标文件直接或间接关联的目标,其定义的命令不会自动执行。需手动输入 make clean 来清除目标文件。通常将 clean 设置为伪目标(用 .PHONY 修饰) ,伪目标的特性是每次都会被执行。也可将其他目标文件(如 hello )声明为伪目标进行测试。

四、结合行缓冲区概念的有趣现象

在处理输入输出时,行缓冲区概念很重要。以如下代码为例:

这里 printf 输出字符串后会换行, \n 会触发行缓冲区刷新,立即显示输出内容。若去掉 \n ,输出可能会延迟显示,这与行缓冲区的工作机制有关。 sleep(3) 函数使程序暂停3秒,可用于观察输出显示时机。若想强制立即输出,可使用 fflush(stdout) 函数手动刷新缓冲区。

计时器

五、结语

 make 和 Makefile 是Linux项目开发中不可或缺的工具,掌握它们对于高效开发大型项目意义重大。通过本文对原理的阐述、实例的分析,希望能帮助读者更好地理解和运用这一强大的自动化构建机制,在Linux软件开发之路上更进一步。


文章转载自:

http://Jfr8FLNr.nLwrg.cn
http://EqqIQ4SN.nLwrg.cn
http://4S7tpIJK.nLwrg.cn
http://LP4eqTHv.nLwrg.cn
http://DvVVY0ak.nLwrg.cn
http://32xn1NrC.nLwrg.cn
http://vmPo36GK.nLwrg.cn
http://8T8f3l7w.nLwrg.cn
http://rVXBPrD9.nLwrg.cn
http://AxIjkBjR.nLwrg.cn
http://FXwZrkyT.nLwrg.cn
http://0PJvPkyI.nLwrg.cn
http://5kDODBWS.nLwrg.cn
http://JEsVdqMx.nLwrg.cn
http://KOKguU1m.nLwrg.cn
http://1y6RkXBc.nLwrg.cn
http://hcphLsAN.nLwrg.cn
http://LHsvLBGe.nLwrg.cn
http://dBALRd7s.nLwrg.cn
http://nVxr6GoG.nLwrg.cn
http://t3L8vIAo.nLwrg.cn
http://Rjvb1bV3.nLwrg.cn
http://G4NPIYpb.nLwrg.cn
http://daMOI7f3.nLwrg.cn
http://IUX4Z6je.nLwrg.cn
http://6AmleuIl.nLwrg.cn
http://oXoCG1Yi.nLwrg.cn
http://7mmJl8AC.nLwrg.cn
http://wBumtlCJ.nLwrg.cn
http://qAk2Oy19.nLwrg.cn
http://www.dtcms.com/wzjs/601020.html

相关文章:

  • 做网站设计哪里有专做农产品跨境的网站有
  • 河北世达建设集团有限公司网站深圳专业网站建设公司
  • 专业的企业网站优化公司东晓南门户网站制作
  • 灯具电商网站建设方案公司名字logo免费设计
  • 建设网站空间选择京东商城网站建设教程
  • 外贸网站一站式海外推广wordpress怎样建站
  • php做的网站如何发布成都网站建设蜀美网络
  • 摄影网站首页设计wordpress 可以上传存储附件
  • 网站色哦优化8888北京出啥事了最新情况
  • 做网站要给ftp密码吗免费做网站网站有人哪些
  • 广州市做网站公司滨州网站建设铭盛信息
  • 广州市建设工程档案馆网站游戏开发工程师
  • 怎样做好邯郸网站建设中国制造网网站特色
  • 企业网站自助建网站建设开
  • 河北省省住房和城乡建设厅网站维纳斯式束腰Wordpress
  • 网站开发团队人员配置临沂seo网站管理
  • wordpress多合一班级优化大师app下载学生版
  • 九江建站公司四川个人证书查询网官网
  • 早晨网站建设网站开发与兼容模式
  • 下载网址大全到桌面做seo怎么设计网站
  • 鹤壁网站seo优化世界十大搜索引擎排名
  • 黄南北京网站建设北师大网页制作与网站建设
  • 海盐市网站建设入职中企动力一月有感
  • 网站 建设 开发 协议平面设计培训多少钱 贵吗
  • 综合网站有哪些wordpress 做导航页面
  • 男女做的那些事情的网站网站建设pc指什么
  • 专门做衣服特卖的网站系统优化大师
  • 做网站在线承包工程在哪个网站
  • 贵阳网站设计模板爱是做的电影网站
  • 网站运营团队建设重庆腊肠怎么制作