【发布时间】:2019-08-23 08:48:15
【问题描述】:
我有一个带有这个目标的 Makefile:
MY_DIR:=${CURDIR}/MY/DIR
my_proj:
cd $(MY_DIR); echo $(MY_ENV_VAR); python $(MY_ENV_VAR)/myscript.py --src $(MY_DIR) config
运行python脚本,即myscript.py,其位置存储在MY_ENV_VAR环境变量中。奇怪的是,echo 命令正确地打印了变量(即 c:/my/project/dir),但是 python 抱怨它找不到带有此错误的脚本文件:
python.exe: can't open file 'c:myprojectdir/myscript.py': [Errno 2] No such file or directory
现在,主要问题是为什么 make 工具在 echo 命令中正确解释了我的环境变量,但是在传递给 python 时路径被破坏了?
附言我正在使用 python 3.7.3,在 Windows 10 上制作 4.2.1。
更新1:我已经使用了其他一些问题和here中描述的$(value ...)功能,但问题仍然相同。
【问题讨论】:
-
echo $(MY_ENV_VAR)的输出是什么? -
@Sraw,哎呀,它是 C:\my\project\dir
-
嗯,正如@Vorpal 所说,这似乎不是一条正确的路径。
标签: python python-3.x makefile environment-variables