我正在写一个Makefile,我想在Makefile中调用virtualenvwrapper命令“deactivate”。
这个帖子How to leave/exit/deactivate a python virtualenv?的anwser有一条评论说“deactivate”命令不是二进制文件,也不是脚本,它是你激活virtualenv时创建的dinamyc别名shell。
那么,我该怎么做?
答案 0 :(得分:4)
如virtualenvwrapper code所示,当您使用workon时,deactivate是一个源自您的env的函数。
我认为,出于安全考虑,make不会将Makefile内部的访问权限授予当前用户的功能和别名。因此,在Makefile中,你应该找到virtualenvwrapper.sh,在你想要的virtualenv上工作,然后你就可以访问你的去激活命令了。
ax 你的Makefile目标和 bring_axe 你已经拥有的虚拟目标,你应该这样做:
axe:
source virtualenvwrapper.sh; workon brings_axe; deactivate