我一直在搜索并尝试各种替代方案但没有成功,现在花了几天时间 - 让我发疯。
使用Python 2.5.2在Red Hat Linux上运行 开始使用最新的Virtualenv但无法激活它,我发现某处建议需要早期版本,所以我使用了Virtualenv 1.6.4,因为它应该适用于Python 2.6。
[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.
[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.
仍然没有快乐......
答案 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
目录下应该有app
和venv
个文件夹。然后运行以下命令,这是在Ubuntu中为我工作的一个。
source venv/bin/activate
答案 7 :(得分:12)
答案 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)
答案 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中激活虚拟环境。
down\scripts\activate
\ scripts目录包含激活文件。
Linux Ubuntu
在Ubuntu中创建以下目录:
要在Linux Ubuntu中激活虚拟环境。
source ./bin/activate
/ bin目录包含激活文件。
虚拟环境从Windows复制到Linux Ubuntu反之亦然
如果将虚拟环境文件夹从Windows复制到Linux Ubuntu,则根据目录:
source ./down/Scripts/activate
答案 15 :(得分:1)
答案 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