在Makefile中导出环境变量

在Makefile中导出环境变量,makefile,environment-variables,Makefile,Environment Variables,我有一个简单的Makefile: app : app.cpp g++ -c app.cpp -o app 但我的应用程序要求设置var环境变量(var:=“/etc/file.cfg”),如何在Makefile中实现这一点?我的意思是,如何使我在运行命令makemakefile后能够做到这一点: mazix@computer:~/Desktop/echo$(var)我将能够看到“/etc/file.cfg”?进程不能在其父进程中设置环境变量;UNIX就是这样工作的 您可以创建一个小

我有一个简单的Makefile:

app : app.cpp
      g++ -c app.cpp -o app
但我的应用程序要求设置
var
环境变量(var:=“/etc/file.cfg”),如何在Makefile中实现这一点?我的意思是,如何使我在运行命令
makemakefile
后能够做到这一点:


mazix@computer:~/Desktop/echo$(var)
我将能够看到“/etc/file.cfg”?

进程不能在其父进程中设置环境变量;UNIX就是这样工作的

您可以创建一个小脚本来设置变量并运行程序。如果脚本的内容有些可变,您可以编写Makefile来为您生成脚本:

#!/bin/bash
export my_var=12345_mazix
./app
或者,Makefile可以显示要复制并粘贴到
~/.profile
文件中的字符串,该字符串由设置这些环境变量的一个或多个命令组成:

export my_var=12345_mazix

进程不能在其父进程中设置环境变量;UNIX就是这样工作的

您可以创建一个小脚本来设置变量并运行程序。如果脚本的内容有些可变,您可以编写Makefile来为您生成脚本:

#!/bin/bash
export my_var=12345_mazix
./app
或者,Makefile可以显示要复制并粘贴到
~/.profile
文件中的字符串,该字符串由设置这些环境变量的一个或多个命令组成:

export my_var=12345_mazix

好的,但是如何编写这样的脚本呢?这不起作用:
#/usr/bin/env python import os.environ['my_var']='12345_mazix'
否。您也不能编写脚本来更改父环境!您可以编写脚本来设置环境变量,然后启动程序;查看我的编辑。好的,但是如何编写这样的脚本?这不起作用:
#/usr/bin/env python import os.environ['my_var']='12345_mazix'
否。您也不能编写脚本来更改父环境!您可以编写脚本来设置环境变量,然后启动程序;请参阅我的编辑。