makefile 自动化变量
2015-11-10 16:33
344 查看
print xxx: *.c *.h echo $? echo $< echo $^ echo $@ touch print
$? 所有比目标文件更新的依赖文件列表,空格分割。如果目标是静态库文件名,代表的是库成员( .o文件)。
$< 规则的第一个依赖文件名。如果是一个目标文件使用隐含规则来重建,则它代表由隐含规则加入的第一个依赖文件
$^ 规则的所有依赖文件列表,使用空格分隔。如果目标是静态库文件,它所代表的 只能是所有库成员( .o文件)名。一个文件可重复的出现在目标的依赖中,变量 “ $^”只记录它的一次引用情况。就是说变量“ $^”会去掉重复的依赖文件
$@ 表示规则的目标文件名。如果目标是一个文档文件( Linux中,一般称.a文件为 文档文件,也称为静态库文件),那么它代表这个文档的文件名。在多目标模式 规则中,它代表的是哪个触发规则被执行的目标文件名。
如make xxx 就会输出xxx, make 则会输出print
相关文章推荐
- Android Stduio的依赖
- MFC动态创建状态栏
- 加解密优化
- 修改mysql用户密码的方法总结
- 求最大公约数
- Yii2-rbac
- Failed to connect to the configuration database(Sharepoint 2013配置向导失败)
- iOS设计模式——委托
- iOS设计模式——委托
- Android开发之Widget桌面时钟
- Squid反向代理
- 【Android】Android M 新的运行时权限开发者需要知道的一切
- 可调速自动播放ppt
- 自定义导航栏按钮UIBarButtonItem 文字或图片
- Window pageXOffset 和 pageYOffset 属性
- web项目在eclipse中服务器端无法识别
- storyboard中UICollectionViewCell子视图的大小和约束设置有差别的问题
- 电脑重装步骤记录
- CentOS Linux 升级内核步骤和方法
- PullToRefresh开源项目详解以及universal-image-loader的使用(一)