目录
1.环境变量(全局变量)
- makefile中能够直接使用环境变量的值
定义了同名变量,环境变量将被覆盖
其实JAVA_HOME是系统环境变量,但是我没安装JAVA所以是空的
运行make时指定”-e”选项,优先使用环境变量
2.为什么要在makefile中使用环境变量?
- 优势
环境变量可以在所有makefile中使用
- 劣势
过多的依赖环境变量会导致移植性降低
3.变量在不同makefile之间的传递方式
- 直接在外部定义环境变量进行传递
- 使用export定义变量进行传递(定义临时环境变量)
- 定义make命令行变量进行传递(推荐)
4.目标变量(局部变量)
- 作用域只在指定目标及连带规则中
我测试是:先执行test后执行another那就是按照test来的,个人理解就是执行test就是把之前的var给覆盖了而已
5.模式变量
- 模式变量是目标变量的扩展
- 作用域只在符合模式的目标及连带规则中
6.小结
- makefile中的三种变量
全局变量:makefile外部定义的环境变量
文件变量:makefile中定义的变量
局部变量:指定目标的变量