
MakeFile学习历程
文章平均质量分 55
TonyaBaSy
坚持不是单单为了成功。坚持是更是为了在俯瞰人生的时候能够自我欣赏,而不是自我叹息。
展开
-
3.判断语句和函数
ifeq(a,b)系列ifeq(a,b)、else、endififeq($(CC),gcc) $(CC) -o foo $(OBJECT) $(GCC_LIB)else $(CC) -o foo $(OBJECT) $(NORMAL_LIB)endif类似的还有ifneq,ifdef,ifndef函数函数的调用格式:$(<function> <argument1>,<argum原创 2016-05-07 21:36:51 · 666 阅读 · 0 评论 -
2.变量
变量的作用域局部变量:在规则中声明的变量为局部变量。自动化变量是局部变量。# 此时CFLAGES的值是:-gprog: CFLAGES = -g全局变量赋值符号 = 赋值:= 赋值,但不使用未定义的变量+= 追加赋值override 修饰符,用来保护变量的值。使用该修饰符的变量,其值无法在命令行中进行修改。自定义变量自定义的变原创 2016-05-07 21:35:34 · 297 阅读 · 0 评论 -
1.认识Makefile文件
Makefile通过需要集中编译的文件整合,按照一定的书写规则,可以写成一个类似批处理的文档,这个文档就是Makefile。通过它可以集成编译一个庞大的项目,利于修改编译内容和维护。一个示例 a.out : main.o add.o sub.o sef.o gcc -o a.out main.o add.o sub.o sef.o main.o : main.c原创 2016-05-07 21:34:48 · 356 阅读 · 0 评论 -
0.附录
伪目标我们可以参照这种规则来书写我们的 makefile 中的目标。 all —— 这个伪目标是所有目标的目标,其功能一般是编译所有的目标。 clean —— 这个伪目标功能是删除所有被 make 创建的文件。 install —— 这个伪目标功能是安装已编译好的程序,其实就是把目标执行文件拷贝到指定的目标中去。 print原创 2016-05-07 21:31:47 · 421 阅读 · 0 评论