|
|
1
6
如果变量导出没有像在命令行上那样工作,这表明Make正在选择一个与您正在使用的shell不同的shell,使用不同的语法来处理变量(
|
|
|
2
11
您还可以使用GNU make的机制正确添加环境变量,如下所示:
我认为,在传递到外壳之前,内部的替换会做什么。请注意,export命令在目标块中不起作用,只是作为立即执行的命令不包含。 |
|
|
3
3
最终,您需要在shell列表甚至脚本中定义变量并执行编译器,而不是在单独的脚本中
另一件事是在同一个shell中执行所有这些内容
不要忘记让适当的目标依赖于脚本本身。顺便说一句,有些
|
|
|
4
1
您可以编写另一个shell脚本来执行所有这些命令,然后打印出可以使用的变量赋值。运行脚本,将其输出通过管道传输到一个文件,然后从Makefile中包含该文件。例如:
test.sh
在包含此Makefile的目录中运行“make”会生成:
make通过运行shell脚本创建test.mk,然后将其包括在内。test.mk包含test.sh的输出,并被解析为Makefile。看见
http://www.gnu.org/software/make/manual/make.html#Include
更多细节。
|
|
|
5
0
重申:如何将shell变量放入make文件? 比如:
|
|
|
6
0
可能有意思的是,为了覆盖已在makefile中定义的选项,
生成文件:
运行品牌:
|
|
|
Jeremy L. · 在变量名中查找子字符串 1 年前 |
|
|
wvxvw · 在Make规则中将源和目标配对 1 年前 |
|
|
thetango · Makefile:多次执行目标 1 年前 |
|
|
Bokambo · make:MakeFile无需执行任何操作 1 年前 |