如何激活virtualenv?

时间:2013-01-30 13:02:35

标签: python virtualenv

我一直在搜索并尝试各种替代方案但没有成功,现在花了几天时间 - 让我发疯。

使用Python 2.5.2在Red Hat Linux上运行 开始使用最新的Virtualenv但无法激活它,我发现某处建议需要早期版本,所以我使用了Virtualenv 1.6.4,因为它应该适用于Python 2.6。

似乎安装虚拟环境ok

[necrailk@server6 ~]$ python virtualenv-1.6.4/virtualenv.py virtual
New python executable in virtual/bin/python
Installing setuptools............done.
Installing pip...............done.

环境看起来不错

[necrailk@server6 ~]$ cd virtual
[necrailk@server6 ~/virtual]$ dir
bin  include  lib

尝试激活

[necrailk@server6 ~/virtual]$ . bin/activate
/bin/.: Permission denied.

选中chmod

[necrailk@server6 ~/virtual]$ cd bin
[necrailk@server6 bin]$ ls -l
total 3160
-rw-r--r--    1 necrailk biz12        2130 Jan 30 11:38 activate
-rw-r--r--    1 necrailk biz12        1050 Jan 30 11:38 activate.csh
-rw-r--r--    1 necrailk biz12        2869 Jan 30 11:38 activate.fish
-rw-r--r-

问题,所以我改了

[necrailk@server6 bin]$ ls -l
total 3160
-rwxr--r--    1 necrailk biz12        2130 Jan 30 11:38 activate
-rw-r--r--    1 necrailk biz12        1050 Jan 30 11:38 activate.csh
-rw-r--r--    1 necrailk biz12        2869 Jan 30 11:38 activate.fish
-rw-r--r--    1 necrailk biz12        1005 Jan 30 11:38 activate_this.py
-rwxr-xr-x    1 necrailk biz

再次尝试activate

[necrailk@server6 ~/virtual]$ . bin/activate
/bin/.: Permission denied.

仍然没有快乐......

18 个答案:

答案 0 :(得分:256)

创建文件夹并cd进入后,我的工作流程如下:

$ virtualenv venv --distribute
New python executable in venv/bin/python
Installing distribute.........done.
Installing pip................done.
$ source venv/bin/activate
(venv)$ python

答案 1 :(得分:78)

您忘了执行source bin/activate,其中source是可执行文件名。 最初几次打击我,很容易认为手册告诉“从环境文件夹的根目录执行此操作”。

无需通过activate {/ 1}}执行chmod

答案 2 :(得分:52)

你可以做到

cd /python_env/bin/

或者只是转到目录

source ./activate

然后

    if (p[i]==NULL)
        printf("Error in memory allocation.\n");
        return -2;

祝你好运。

答案 3 :(得分:24)

cd到环境路径,转到bin文件夹。 此时,当您使用ls命令时,您应该看到"激活"文件。

现在输入

source activate

答案 4 :(得分:16)

问题在于/bin/.命令。从那以后,这真的很奇怪。应该始终是它所在目录的链接。(老实说,除非.是一个奇怪的别名或函数,我甚至不知道它是如何可能的。)你的shell没有它也有点不寻常。 . builtin for source

一个快速解决方法是在不同的shell中运行virtualenv。 (显而易见的第二个好处是,您不必deactivate而只需exit。)

/bin/bash --rcfile bin/activate

如果您的shell支持它,您可能还有非标准source命令,执行与.相同的操作,但可能不存在。 (所有人说,你应该试着弄清楚为什么你的环境很奇怪,否则将来你会再次感到痛苦。)

顺便说一句,您不需要chmod +x这些文件。如果要直接执行 ,文件只需要是可执行文件。在这种情况下,您尝试从.启动它们,因此它们不需要它。

答案 5 :(得分:14)

$ mkdir <YOURPROJECT>  创建一个新项目

$ cd <YOURPROJECT> 将目录更改为该项目

$ virtualenv <NEWVIRTUALENV> 创造新的virtualenv

$ source <NEWVIRTUALENV>/bin/activate 激活新的virtualenv

答案 6 :(得分:14)

转到项目目录。在我的情况下,microblog是烧瓶项目目录,在microblog目录下应该有appvenv个文件夹。然后运行以下命令,这是在Ubuntu中为我工作的一个。

source venv/bin/activate

enter image description here

答案 7 :(得分:12)

而不是./activate

使用source activate

See this screenshot

答案 8 :(得分:7)

对于Windows您可以执行以下操作:

创建虚拟环境:virtualenv envName -python = python.exe(如果不是创建环境变量)

  

激活虚拟环境:&gt; \路径\到\ ENVNAME \脚本\激活

     

停用虚拟环境:&gt; \路径\到\ ENV \脚本\停用

它适用于新的python版本。

答案 9 :(得分:4)

我也会推荐virtualenvwrapper。它为我创造奇迹,以及我如何始终遇到激活问题。 http://virtualenvwrapper.readthedocs.org/en/latest/

答案 10 :(得分:3)

创建一个名为<Your Env _name >:的Python虚拟环境。 我给了它VE。

git clone https://github.com/pypa/virtualenv.git
python virtualenv.py VE

要激活新的虚拟环境,请运行(注意它不是./此处):

. VE/bin/activate

示例输出(注意提示已更改):

(VE)c34299@a200dblr$

设置虚拟环境后,您可以删除Virtualenv repo。

答案 11 :(得分:3)

source virtualen_name/bin/activate

code

答案 12 :(得分:2)

在Mac上,将shell更改为BASH(请注意虚拟环境仅适用于bash shell)

[user@host tools]$. venv/bin/activate 

.: Command not found.

[user@host tools]$source venv/bin/activate

Badly placed ()'s.

[user@host tools]$bash

bash-3.2$ source venv/bin/activate

(venv) bash-3.2$ 
宾果,它有效。看到提示已更改。

在Ubuntu上:

user@local_host:~/tools$ source toolsenv/bin/activate

(toolsenv) user@local_host~/tools$ 

注意:提示已更改

答案 13 :(得分:2)

我无法运行source / bin / activate然后我意识到我使用tcsh作为我的终端shell而不是bash。一旦我切换,我就能激活venv。

答案 14 :(得分:2)

Windows 10

在Windows中,将创建以下目录:

Windows 10 Virtual Environment directories

要在Windows 10中激活虚拟环境。

down\scripts\activate

\ scripts目录包含激活文件。

Linux Ubuntu

在Ubuntu中创建以下目录:

Linux Ubuntu Virtual Environment directories

要在Linux Ubuntu中激活虚拟环境。

source ./bin/activate

/ bin目录包含激活文件。


虚拟环境从Windows复制到Linux Ubuntu反之亦然

如果将虚拟环境文件夹从Windows复制到Linux Ubuntu,则根据目录:

source ./down/Scripts/activate

答案 15 :(得分:1)

运行此代码,如果您在Windows计算机上,它将被激活
source venv/Scripts/activate

enter image description here

答案 16 :(得分:0)

在这里发布我的答案可能有点晚了,但我仍然会发帖,但这可能对某人有利,

我遇到了同样的问题,

主要原因是我将virtualenv创建为&#34; root&#34;用户 但后来尝试使用其他用户激活它。

chmod不会工作,因为您不是文件的所有者,因此另一种方法是使用chown(更改所有权)

例如:

如果您在/ home / abc / ENV

创建了virtualenv

然后CD到/ home / abc

并运行命令: chown -Rv [user-to-who-you-change-ownership] [需要更改所有权的文件夹/文件名]

在此示例中,命令为: chown -Rv abc ENV

成功更改所有权后,您只需运行 source / ENV / bin /./ activate ,您就可以正确激活virtualenv。

答案 17 :(得分:0)

1-打开Powershell并导航到您的应用程序文件夹 2-输入您的virtualenv文件夹,例如:cd。\ venv \ Scripts \ 3-按类型激活虚拟环境。\ activate