linux应用开发-makefile
来源:互联网 发布:数据库系统基础初级篇 编辑:程序博客网 时间:2024/05/19 16:38
linux应用开发-makefile
一 makefile
工程管理文件,编译成复杂的程序
组装程序
二 规则
1 文件名称:全部小写makefile或者首字母Makefile大写,其他的都不行
工程管理文件,编译成复杂的程序
组装程序
二 规则
1 文件名称:全部小写makefile或者首字母Makefile大写,其他的都不行
2 文件里面#代表注释
三 编写
makefile由许多条规则组成
规则:依赖项
(前面留一个tab)命令
hello:main.o 1.c 2.c
gcc main.c 1.c 2.c -o hello
1 自定义变量:MOBJ= main.c相当于宏 test: $(MOBJ)
2 预定义变量:系统默认的变量CFLAGS = -g -c CC = gcc
3 自动变量:
$*不包含扩展名的目标文件名称
$<第一个依赖文件名称
$?所有时间戳比目标文件晚的文件
$@目标文件完整名称
$^所有不重复的依赖文件gcc $^ -o $@
4 伪目标
.PHONY: install
即便当前文件夹内有install文件,也不执行
5 命令前面加上@符号,make的时候就不会输出信息:@gcc main.c 1.c 2.c -o hello
6 makefile的包含和嵌套
包含:#include testmk.mk
嵌套:gcc -c main.c -C submkdir
7 条件判断
前面不空Tab
if
else
endif
8 makefile管理命令
-C dir读入指定文件夹dir下的makefile
-f file读入当前目录下的file为makefile
-i 忽略所有的错误信息
-l dir指定包含makefile的文件的目录
四 makefile常见问题
1 output不仅仅一个:用多个makefile文件,相互include嵌套或者使用伪目标
2 源文件或者依赖文件很多:makefile分开多文件或者分级
3 嵌套执行makefile:使用-C dir参数来指定读取makefile的目录
五 常见变量
自己写的小程序
0 0
- linux应用开发-makefile
- Linux 开发 | 学习 Makefile
- Linux c 开发 - Makefile工具
- Maemo Linux手机平台系列分析:(17) Maemo应用开发: GNU make 与makefile
- Linux平台下基于BitTorrent应用层协议的下载软件开发--Makefile
- Vs2012在Linux开发中的应用(6):改写Makefile项目的Build过程
- arm开发中makefile的应用
- linux 应用程序设计基础--Makefile工程管理
- linux应用层程序makefile示例
- Linux 应用---make及makefile的编写
- Linux 应用---make及makefile的编写
- Linux 应用---make及makefile的编写
- Linux 应用---make及makefile的编写
- Linux 应用---make及makefile的编写
- Linux下Makefile的简单应用
- linux环境开发工具之makefile文件
- Linux下C语言开发(Makefile编写)
- linux下开发之makefile文件
- hdu1044 Collect More Jewels
- 布局
- 并发概念总结
- 时钟
- [iOS]设置UIButton上字体的对齐方式
- linux应用开发-makefile
- Android学习之SharedPreferences
- 汉诺塔的实现
- 二叉树的构造(二叉链表)、遍历以及基本操作
- compatible parameter
- java 字符串,字符串缓冲区
- org.json.JSONException: End of input at character 0 of
- iOS开发 - 网络数据安全加密(MD5)
- 概率题 面试 笔试