无法通过Virtualenv通过pip安装 [英] Can't install via pip with Virtualenv
问题描述
以下是我在运行pip
时遇到的错误:
Below is the error I get when I run pip
:
serkan$ rm -r mysite
serkan$ pwd
/Users/serkan/Desktop/Python Folder
serkan$ virtualenv mysite
New python executable in mysite/bin/python
Installing setuptools............done.
Installing pip...............done.
serkan$ source mysite/bin/activate
(mysite)serkan$ pip install pinax
-bash: /Users/serkan/Desktop/Python Folder/mysite/bin/pip: "/Users/serkan/Desktop/Python: bad interpreter: No such file or directory
(mysite)serkan$ python pip install pinax
python: can't open file 'pip': [Errno 2] No such file or directory
(mysite)serkan$ python pip install Pinax
python: can't open file 'pip': [Errno 2] No such file or directory
(mysite)serkan$ python pip install Pinax
python: can't open file 'pip': [Errno 2] No such file or directory
(mysite)serkan$ python pip install Pinax
python: can't open file 'pip': [Errno 2] No such file or directory
(mysite)serkan$ python pip
python: can't open file 'pip': [Errno 2] No such file or directory
(mysite)serkan$ pip
-bash: /Users/serkan/Desktop/Python Folder/mysite/bin/pip: "/Users/serkan/Desktop/Python: bad interpreter: No such file or directory
(mysite)serkan$ pip install Pinax
-bash: /Users/serkan/Desktop/Python Folder/mysite/bin/pip: "/Users/serkan/Desktop/Python: bad interpreter: No such file or directory
(mysite)serkan$
推荐答案
在没有空格的路径中创建您的virtualenv环境.这就是为什么它发生的原因:
Create your virtualenv environment within a path without spaces. This is why it is happening:
创建环境时,它会设置一个bin
目录.在该bin
目录中是与环境有关的所有可执行文件.有些是脚本.如您所知,hashbang用来告诉系统使用什么解释器来运行脚本.您可能经常在脚本顶部看到此信息:
When you create an environment, it sets up a bin
directory. In that bin
directory are all the executables relating to the environment. Some are scripts. As you may know, hashbangs are used to tell the system what interpreter to use to run the script. You may see this at the top of scripts often:
#!/usr/bin/env python
如果脚本位于/tmp/test.py
,则指示系统运行以下命令来执行脚本:
If the script is at /tmp/test.py
, that tells the system to run this command to execute the script:
/usr/bin/env python /tmp/test.py
以您为例,virtualenv正在创建如下脚本:
In your case, virtualenv is creating scripts like this:
#!/tmp/oh no/bin/python
当系统尝试执行该命令时,它将尝试使用参数no/bin/python
和/tmp/test.py
执行命令/tmp/oh
. /tmp/oh
不存在,所以失败.
When the system tries to execute that, it will try to execute the command /tmp/oh
with the arguments no/bin/python
and /tmp/test.py
. /tmp/oh
does not exist, so it fails.
这篇关于无法通过Virtualenv通过pip安装的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!