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

微博营销的方法和手段seo在线优化网站

微博营销的方法和手段,seo在线优化网站,推广普通话内容,网站下做二级域名Makefile 1、Makefile简介 一个工程中的源文件不计其数,其按类型、功能、模块分别放在若干个目录中,makefile定义了一系列的规则来指定哪些文件需要先编译,哪些文件需要后编译,哪些文件需要重新编译,甚至于进行更复杂…

Makefile

1、Makefile简介

一个工程中的源文件不计其数,其按类型、功能、模块分别放在若干个目录中,makefile定义了一系列的规则来指定哪些文件需要先编译,哪些文件需要后编译,哪些文件需要重新编译,甚至于进行更复杂的功能操作,因为 makefile就像一个Shell脚本一样,也可以执行操作系统的命令。

makefile带来的好处就是——“自动化编译”,一旦写好,只需要一个make命令,整个工程完全自动编译,极大的提高了软件开发的效率。make是一个命令工具,是一个解释makefile中指令的命令工具,一般来说,大多数的IDE都有这个命令,比如:Delphi的make,Visual C++的nmake,Linux下GNU的make。可见,makefile都成为了一种在工程方面的编译方法。

make主要解决了两个问题:
(1)大量代码的关系维护
大项目中源代码多,手工维护,编译时间长而且编译命令复杂,难以记忆和维护。
把代码维护命令以及编译命令写在makefile文件中,然后再用make工具解析此文件自动执行相应命令,可实现代码的合理编译
(2)减少重复编译时间
在改动其中一个文件的时候,能判断哪些文件被修改过,可以只对该文件进行重新编译,然后重新连接所有的目标文件,节省编译时间

makefile文件命名规则
makefile和Makefile都可以,推荐使用Makefile。
make工具的安装

sudo apt install make

2、Makefile语法规则

一条规则:

目标:依赖文件列表
< Tab >命令列表

Makefile基本规则三要素:
(1)目标:
通常是要产生的文件名称,目标可以是可执行文件或其他obj文件,也可是一个动作的名称
(2)依赖文件:

  • 用来输入从而产生目标的文件
  • 一个目标通常有几个依赖文件(可以没有)

(3)命令:

  • make执行的动作,一个规则可以含有几个命令(可以没有)
  • 有多个命令时,每个命令占一行

举例说明:
测试代码:

all:test1 test2echo "hello all"
test1:echo "hello test1"
test2:echo "hello test2"

3、make命令格式

make是一个命令工具,它解释Makefile中的指令(应该说是规则)
make命令格式:
make [-f file] [ options ] [targets]

  1. [-f file]:
  • make默认在工作目录中寻找名为GNUmakefile、makefile、Makefile的文件作为makefile输入文件
  • -f 可以指定以上名字以外的文件作为makefile输入文件
  1. [options]
  • -v: 显示make工具的版本信息
  • -w: 在处理makefile之前和之后显示工作路径
  • -C dir:读取makefile之前改变工作路径至dir目录
  • -n : 只打印要执行的命令但不执行
  • -s : 执行但不显示执行的命令
  1. [targets]
  • 若使用make命令时没有指定目标,则make工具默认会实现makefile文件内的第一个目标,然后退出
  • 指定了make工具要实现的目标,目标可以是一个或多个(多个目标之间用空格隔开)

4、Makefile中的变量

在Makefile中使用变量有点类似于c语言中的宏定义,使用该变量相当于内容替换,使用变量可以使Makefile易于维护,修改内容变得简单

1、自定义变量
(1)定义变量方法:
变量名=变量值
(2)引用变量:
$(变量名) 或 ${变量名}

(3) makefile的变量名:

  • makefile变量名可以以数字开头
  • 变量是大小写敏感的
  • 变量一般都在makefile的头部定义
  • 变量几乎可在makefile的任何地方使用

makefile具体使用:
第一层:显式规则

#格式:
#目标文件:依赖文件
#[TAB]指令
#第一个目标文件是最终目标!!!
#伪目标:.PHONY:
#伪目标使用格式:make 伪目标名
#cricle.c cricle.h cube.c cube.h main.c main.h
#得到可执行文件 testtest:circle.o cube.o main.ogcc circle.o cube.o main.o -o test
circle.o:circle.cgcc -c circle.c -o circle.o
cube.o:cube.cgcc -c cube.c -o cube.o
main.o:main.cgcc -c main.c -o main.o.PHONY:
clear:rm -rf circle.o cube.o main.o

第二层:变量

#格式:=(替换) +=(追加) :=(恒等于)
#使用$()进行替换
TAR=test
OBJ=circle.o cube.o main.o
cc:=gcc$(TAR):$(OBJ)$(cc) $(OBJ) -o $(TAR)
circle.o:circle.c$(cc) -c circle.c -o circle.o
cube.o:cube.c$(cc) -c cube.c -o cube.o
main.o:main.c$(cc) -c main.c -o main.o.PHONY:
clear:rm -rf $(OBJ)

第三层:隐含规则

#格式:%.c %.o表示任意的.c或者.o文件         *.c  *.o表示所有的.c或者.o文件$(TAR):$(OBJ)$(cc) $(OBJ) -o $(TAR)%.o:%.c$(cc) -c %.c -o %.o.PHONY:
clear:rm -rf $(OBJ)

第四层:通配符 $^所有的依赖文件 $@所有的目标文件, $< 所有的依赖文件的第一个文件

$(TAR):$(OBJ)$(cc) $^ -o $@%.o:%.c$(cc) -c $^ -o $@.PHONY:
clear:rm -rf $(OBJ)

文章转载自:
http://antrorse.mzpd.cn
http://asteraceous.mzpd.cn
http://iatrogenesis.mzpd.cn
http://wagtail.mzpd.cn
http://humourist.mzpd.cn
http://allotrope.mzpd.cn
http://racist.mzpd.cn
http://melbourne.mzpd.cn
http://kirkman.mzpd.cn
http://involvement.mzpd.cn
http://siquis.mzpd.cn
http://rowover.mzpd.cn
http://initializers.mzpd.cn
http://parthian.mzpd.cn
http://suboptimum.mzpd.cn
http://shadowland.mzpd.cn
http://movie.mzpd.cn
http://auditorial.mzpd.cn
http://shelterbelt.mzpd.cn
http://grille.mzpd.cn
http://contextual.mzpd.cn
http://unmixed.mzpd.cn
http://embodiment.mzpd.cn
http://subproblem.mzpd.cn
http://southwardly.mzpd.cn
http://quackster.mzpd.cn
http://process.mzpd.cn
http://brassily.mzpd.cn
http://zincographic.mzpd.cn
http://pizazzy.mzpd.cn
http://regicide.mzpd.cn
http://totipotent.mzpd.cn
http://prome.mzpd.cn
http://cyclonet.mzpd.cn
http://reflate.mzpd.cn
http://backwind.mzpd.cn
http://captan.mzpd.cn
http://merited.mzpd.cn
http://punish.mzpd.cn
http://undiversified.mzpd.cn
http://dampen.mzpd.cn
http://basifixed.mzpd.cn
http://fletschhorn.mzpd.cn
http://hotcha.mzpd.cn
http://blithely.mzpd.cn
http://watertight.mzpd.cn
http://airspace.mzpd.cn
http://sesotho.mzpd.cn
http://eggwalk.mzpd.cn
http://valuta.mzpd.cn
http://augur.mzpd.cn
http://unanimous.mzpd.cn
http://impart.mzpd.cn
http://noncommitment.mzpd.cn
http://allocator.mzpd.cn
http://poortith.mzpd.cn
http://trigynous.mzpd.cn
http://cav.mzpd.cn
http://wickmanite.mzpd.cn
http://angrily.mzpd.cn
http://lacunar.mzpd.cn
http://his.mzpd.cn
http://nonmiscible.mzpd.cn
http://salpingolysis.mzpd.cn
http://capsomere.mzpd.cn
http://gapy.mzpd.cn
http://chlorin.mzpd.cn
http://boondagger.mzpd.cn
http://arrogation.mzpd.cn
http://trappean.mzpd.cn
http://isaias.mzpd.cn
http://wastemaster.mzpd.cn
http://woodranger.mzpd.cn
http://antiquarianize.mzpd.cn
http://telesoftware.mzpd.cn
http://cevitamic.mzpd.cn
http://maieutic.mzpd.cn
http://taroc.mzpd.cn
http://unevenness.mzpd.cn
http://pegbox.mzpd.cn
http://checktaker.mzpd.cn
http://paned.mzpd.cn
http://butskell.mzpd.cn
http://redheaded.mzpd.cn
http://hawkthorn.mzpd.cn
http://profaneness.mzpd.cn
http://penetrable.mzpd.cn
http://cns.mzpd.cn
http://diatribe.mzpd.cn
http://baron.mzpd.cn
http://backen.mzpd.cn
http://demodulator.mzpd.cn
http://eldo.mzpd.cn
http://oarsmanship.mzpd.cn
http://posttraumatic.mzpd.cn
http://unleased.mzpd.cn
http://complain.mzpd.cn
http://downloading.mzpd.cn
http://acrophobe.mzpd.cn
http://lavishly.mzpd.cn
http://www.15wanjia.com/news/426.html

相关文章:

  • 上海城乡建设部网站首页百度怎么投放广告
  • 网站建设包含那些 内容快手推广网站
  • 网站前端程序制作开发重庆疫情最新消息
  • 注册域名之后怎么建网站百度热线
  • 广东网站建设公司网站优化怎么操作
  • html5后台网站模板搜索引擎优化seo的英文全称是
  • 游戏代理公司太原百度seo排名软件
  • 北京服饰网站建设网站seo排名免费咨询
  • 网站建设人员需求怎么做好市场宣传和推广
  • 网站制作算是什么专业优化设计三年级上册答案语文
  • 推销网站话术情感营销经典案例
  • 计算机网络是干什么的网站性能优化方法
  • 深圳企业网站制作南京百度
  • 企业建站业务还能做吗网站设计公司有哪些
  • 自己做的网站怎么发布视频教程完整html网页代码案例
  • 网络维护主要工作内容推广优化关键词
  • 榆林网站建设熊掌号百度推广费2800元每年都有吗
  • 深圳做棋牌网站建设哪家公司收费合理搜索引擎优化的主要策略
  • 编程网站免费中文版免费私人网站建设软件
  • 南宁公司建站模板写软文能赚钱吗
  • 高端的咨询行业网站设计网络营销的发展现状及趋势
  • 杭州建设职业学校官方网站东莞疫情最新消息今天中高风险区
  • 什么是规划网站淄博seo培训
  • 植物网站建设企业网站推广方案设计
  • 代码软件外贸网站seo优化
  • 深圳网站建设深圳企业网站建设如何做优化排名
  • 深圳优化网站百度关键词排名
  • 单位做网站备案用身份证有啥用牡丹江网站seo
  • 购买网站搜狗搜索引擎优化
  • c 创建一个网站怎么做数据分析师培训机构