在path中使用virtualenv和空格
我在我的Mac上build立了一个virtualenv环境,但无法让Pip安装软件包。 它失败,出现以下错误:
/Volumes/Macintosh: bad interpreter: No such file or directory
我将问题追踪到path中存在空间,这里回答如下: https : //stackoverflow.com/a/10873611/126564
(正在/Volumes/Macintosh HD/Python/my_project
的path)
但是这是一个问题。 build议的解决scheme是:
“把你的虚拟环境放在没有空间的路上”
但是有空间的部分就是音量本身。 我所有的path将有一个空间,除非我把它们存储在/
目录。 我不认为“在用户空间之外存储你的东西”是一个很好的解决scheme。
有更好的解决办法吗?
尝试这个:
- 编辑
bin/activate
,改变VIRTUAL_ENV='/Volumes/Macintosh HD/Python/my_project'
,并改变PATH="$VIRTUAL_ENV/bin:$PATH"
,使其在你的环境中工作。 使用echo $PATH
来检查它是否工作。 -
编辑
bin/pip
和bin/easy_install
,将两个文件的第一行改为#!/usr/bin/env python
经过上述2个步骤,您将使您的virtualenv作品(也是pip / easy_install)。
请注意,您不必为virtualenv使用您的项目文件夹。 例如,您可以将virtualenv放入/ tmp文件夹或任何其他没有空格的文件夹中:
virtualenv /tmp/temporary_virtualenv virtualenv /home/my_envs/env_for_projectname
编辑bin/activate
文件和转义空间为我工作。 编辑并保存文件,然后运行source bin/activate
。
除非在Mac上有非典型的驱动器设置,否则path/Volumes/Macintosh HD
应该是/
一个符号链接。 换句话说,而不是
$ virtualenv /Volumes/Macintosh\ HD/venvpath
你可以做
$ virtualenv /venvpath
不是说我试图宽恕不处理文件名空间的软件。 我同意Hugo上面的评论 :关注相关的GitHub问题 。