在Makefile上停用virtualenv

时间:2014-09-27 19:08:10

标签: makefile virtualenvwrapper

我正在写一个Makefile,我想在Makefile中调用virtualenvwrapper命令“deactivate”。

这个帖子How to leave/exit/deactivate a python virtualenv?的anwser有一条评论说“deactivate”命令不是二进制文件,也不是脚本,它是你激活virtualenv时创建的dinamyc别名shell。

那么,我该怎么做?

1 个答案:

答案 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