eck*_*kes 2 makefile environment-variables
例如,我有Makefile在运行时设置一些变量foo = bar
.
当make
被运行,我想访问这些变量.
很遗憾echo $foo
没有回报.
有没有办法将变量从make
后面导出到环境中?
你的问题有点令人困惑,但根据主题我认为你的意思是,你的makefile中有一个make变量设置foo = bar
,然后在make运行并退出之后你想看到foo
你的shell中调用make的值?
不,这是不可能的.它与make无关:任何类型的子进程都不可能修改其父进程的环境(在POSIX类型的系统中).可以这样做的唯一方法是子进程生成设置变量的输出,父shell计算此输出.例如,如果您在makefile中编写了一条规则,如下所示:
show-foo: ; @echo 'foo=$(foo)'
Run Code Online (Sandbox Code Playgroud)
然后你可以从你的shell运行:
eval `make show-foo`
Run Code Online (Sandbox Code Playgroud)
它会在你的shell中设置值.
归档时间: |
|
查看次数: |
22 次 |
最近记录: |