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

婚纱摄影网站模版整站源码工信部网站怎么查网址

婚纱摄影网站模版整站源码,工信部网站怎么查网址,免费网站制作软件的app,推广软件平台有哪些文章目录 1. MakeFile 的作用2. 背景知识说明2.1 程序的编译与链接2.2 常见代码的文档结构 3. MakeFile 的内容4. Makefile的基本语法5. 变量定义5.1 一般变量赋值语法5.2 自动化变量 6. 通配符 参考#xff1a; Makefile教程#xff1a;Makefile文件编写1天入门 Makefile由浅… 文章目录 1. MakeFile 的作用2. 背景知识说明2.1 程序的编译与链接2.2 常见代码的文档结构 3. MakeFile 的内容4. Makefile的基本语法5. 变量定义5.1 一般变量赋值语法5.2 自动化变量 6. 通配符 参考 Makefile教程Makefile文件编写1天入门 Makefile由浅入深–教程、干货 Makefile详解超级好 陈皓 1. MakeFile 的作用 Makefile 文件描述了 Linux 系统下 C/C 工程的编译规则它用来自动化编译 C/C 项目。一旦写编写好 Makefile 文件只需要一个 make 命令整个工程就开始自动编译不再需要手动执行 GCC 命令。 2. 背景知识说明 2.1 程序的编译与链接 编译(compile)是将源文件编译成中间目标文件的过程。对于C、C在Windows下是.obj文件在UNIX下是.o文件。 链接(link)是将目标文件合成执行文件。 正确的编译要求语法正确函数与变量的声明正确。一般来说每个源文件头文件cpp文件都对应于一个中间目标文件。 链接是链接函数和全局变量可以使用中间目标文件来链接。链接时需要支出中间目标文件名称。 在源文件较多的情况下此时中间目标文件也多可以给中间目标文件打包这种包文件就“库文件”(Library FIle)也就是.lib文件或.a文件。 2.2 常见代码的文档结构 src源码incl头文件bin执行码lib静态/动态库 3. MakeFile 的内容 Makefile 文件中主要包含了五项内容 变量定义在Makefile 中我们要定义一系列的变量变量一般都是字符串这个有点像C语言中的宏当Makefile被执行时其中的变量都会被扩展到相应的引用位置上。显式规则显式规则说明了如何生成一个或多的的目标文件。这是由Makefile 的明显指出要生成的文件文件的依赖文件生成的命令。 .隐晦规则make有自动推导的功能隐晦规则指导我们如何简略地书写Makefile的同时又让make命令能够顺利执行。文件指示其包括了三个部分一个是在一个 Makefile 中引用另一个 Makefile就像C语言中的 include 一样另一个是指根据某些情况指定 Makefile 中的有效部分就像C语言中的预编译 #if 一样还有就是定义一个多行的命令。注释Makefile 中只有行注释和 UNIX 的 Shell 脚本一样其注释是用“#”字符。 4. Makefile的基本语法 一般的 Makefile 语句的形式如下 targets:prerequisitescommand或 targets:prerequisites;commandcommand其中 targets是目标可以是中间文件也可以是可执行文件或标签prerequisites是依赖的文件要生成 targets 需要的文件或者是目标。可以是多个也可以是没有command是make 需要执行的命令任意的 shell 命令。可以有多条命令每一条命令占一行。 注意目标和依赖文件之间要使用冒号分隔开命令的开始要使用Tab键。 以此规则可以写出如下代码 test:test.cgcc -o test test.c上述代码实现的功能就是编译 test.c 文件通过这个实例可以详细的说明 Makefile 的具体的使用。其中 test 是的目标文件也是我们的最终生成的可执行文件。依赖文件就是 test.c 源文件重建目标文件需要执行的操作是gcc -o test test.c。 5. 变量定义 5.1 一般变量赋值语法 MakeFile中变量定义的基本语法 valname valuelistMakeFile中的变量没有数据类型或者理解为是字符数组。值列表可以是零项也可以是一项或者多项。 调用变量的格式$(valname)或${valname}如 OBJmain.o test.o test1.o test2.o test:$(OBJ)gcc -o test $(OBJ)变量的赋值 Makefile 有四种基本赋值方式 简单赋值 ( : ) 编程语言中常规理解的赋值方式只对当前语句的变量有效。递归赋值 ( ) 赋值语句可能影响多个变量所有目标变量相关的其他变量都受影响如使用该变量赋值的变量。条件赋值 ( ? ) 如果变量未定义则使用符号中的值定义变量。如果该变量已经赋值则该赋值语句无效。追加赋值 ( ) 原变量用空格隔开的方式追加一个新值。 案例 简单赋值 x:foo y:$(x)b x:new testecho y$(y)echo x$(x)在 shell 命令行执行make test我们会看到: yfoob xnew递归赋值 xfoo y$(x)b xnew testecho y$(y)echo x$(x)在 shell 命令行执行make test我们会看到: ynewb xnew条件赋值 x:foo y:$(x)b x?new testecho y$(y)echo x$(x)在 shell 命令行执行make test我们会看到: yfoob xfoo追加赋值 x:foo y:$(x)b x$(y) testecho y$(y)echo x$(x)在 shell 命令行执行make test我们会看到: yfoob xfoo foob5.2 自动化变量 自动化变量是Makefile 自动产生的变量。 自动化变量说明$表示规则的目标文件名。如果目标是一个文档文件Linux 中一般成 .a 文件为文档文件也成为静态的库文件那么它代表这个文档的文件名。在多目标模式规则中它代表的是触发规则被执行的文件名。$%当目标文件是一个静态库文件时代表静态库的一个成员名。$规则的第一个依赖的文件名。如果是一个目标文件使用隐含的规则来重建则它代表由隐含规则加入的第一个依赖文件。$?所有比目标文件更新的依赖文件列表空格分隔。如果目标文件时静态库文件代表的是库文件.o 文件。$^代表的是所有依赖文件列表使用空格分隔。如果目标是静态库文件它所代表的只能是所有的库成员.o 文件名。一个文件可重复的出现在目标的依赖中变量$^只记录它的第一次引用的情况。就是说变量“$^”会去掉重复的依赖文件。$类似$^但是它保留了依赖文件中重复出现的文件。主要用在程序链接时库的交叉引用场合。$*在模式规则和静态模式规则中代表“茎”。“茎”是目标模式中“%”所代表的部分当文件名中存在目录时“茎”也包含目录部分。 6. 通配符 通配符使用说明*匹配0个或者是任意个字符匹配任意一个字符[]我们可以指定匹配的字符放在 “[]” 中%匹配任意字符 通配符可以使用在规则的命令和规则中但不能直接用于变量声明。如 # 使用在命令中 .PHONY::clean clean:rm -rf *.o test # 使用在规则中 test:*.cgcc -o $ $^ 我们可以在 Makefile 中这样写 如果我们就是相要通过引用变量的话我们要使用一个函数 wildcard: shell OBJ$(wildcard *.c) test:$(OBJ)gcc -o $ $^
http://www.hkea.cn/news/14454633/

相关文章:

  • 做网站用什么系统较好网站开发 毕业答辩ppt
  • 南京专业做网站的公司哪家好如何在网站源码做授权
  • 中国设计网站排行榜前十名免费下载百度
  • 做网站时搜索的代码是什么手机网站开发步骤
  • 阿里企业网站建设评估为什么不自己做购物网站
  • 济南济南网站建设网站建设WordPress获取文件夹大小
  • 南宁优化网站网络服务网页制作与设计教程
  • 长垣网站建设免费全能空间
  • 自己动手建立个人网站厦门seo推广外包
  • 网站平台建设十大公司百度站长反馈
  • 永久虚拟主机怀化优化生育政策
  • 网站开发经典wordpress 新闻门户
  • 国家重大项目建设库网站wordpress创建目录失败
  • 做企业宣传网站军事时事新闻最新消息
  • 专业网站建设人工智能研发衡阳建设网站公司
  • 网站推广有哪些方案系统开发定制
  • 怎样建设的网站好优化好排名免费招商加盟代理
  • 搭建专业网站服务器网站建设图片怎么做
  • 影响网站显示度的原因建设代练网站
  • 英文网站建设图片wordpress 安装环境
  • 集翔网大网站建设二手房公司网站源码
  • 毕业设计做网站有哪些方面品牌网站建设解决方
  • 做酱菜网站湘潭网站设计公司
  • 北京公司网站建设报价表三元桥做网站的公司
  • 网站域名根目录网站怎么做跳站
  • 做一个微信小程序难吗网站seo优化要懂得做微调
  • 建设银行网站-个人业务建设通app破解版
  • 中国交通建设网站网站空间买什么的好
  • 就有公司域名怎么建设网站企业seo顾问公司
  • 电子商务类型的网站网站建设必须要做404