Pip 不能在 Virtual Env 内部工作,但可以在外部完美工作
Pip not working inside Virtual Env but works outside perfectly
大家好,我想按照这里的安装 https://github.com/systers/portal 尝试在我的机器上的虚拟环境中部署服务器。
在出现很多错误后,我决定安装 Ubuntu 16.04 的新副本并开始
安装后这里是我使用给定命令安装的东西
我分别使用 python --version 和 python3--version 检查了我当前的 python 和 python3 版本,它们是 Python 2.7.12 和 Python 3.5.2 分别。
Easy Install. $ sudo apt-get install python-setuptools python-dev build-essential
pip. $ sudo easy_install pip
virtualenv. $ sudo pip install --upgrade virtualenv.
python3-dev tools.$sudo apt-get install python3-dev
之后我创建了一个虚拟环境并使用以下命令激活了它
$ virtualenv venv1 --python=/usr/bin/python3
$ source venv/bin/activate
但是现在当我运行第三条命令时
$ pip install -r requirements/dev.txt
甚至
$pip --version
我收到错误
bash: /media/rohan/New Volume/portal/venv1/bin/pip: "/media/rohan/New: bad interpreter: No such file or directory
/venv1/bin 中还存在文件 pip、pip3、pip3.5
我试过 sudo easy_install pip 认为它会在虚拟环境中安装 pip 但它安装到 /usr/local/bin
我也尝试使用代码
创建一个虚拟环境
$virtualenv venv --python=/usr/bin/python
但这也不起作用,这次也出现了同样的错误,在 /venv/bin pip pip2 pip2.7 中存在
请帮忙
问题似乎是你的 virtualenv 的路径中有一个 space 没有被转义到它应该在的地方。
注意您收到的错误:
/media/rohan/New: bad interpreter: No such file or directory
所以在路径中 space,它试图 运行 一个不存在的程序 (/media/rohan/New
) 在一个不存在的文件 (Volume/portal/venv1/bin/pip
).
将 New Volume
重命名为没有 space 的名称,例如 new_volume
,然后重新创建 virtualenv 应该可以解决此问题。
我重命名了虚拟环境的文件夹,所以我收到了这个错误。
然后我将 venv 文件夹名称重命名为错误中提到的路径(这是我在创建 venv 时命名的那个。)然后尝试使用 pip 并且成功了。
可能您已经解决了您的问题,但这是为未来的访客准备的。
大家好,我想按照这里的安装 https://github.com/systers/portal 尝试在我的机器上的虚拟环境中部署服务器。 在出现很多错误后,我决定安装 Ubuntu 16.04 的新副本并开始 安装后这里是我使用给定命令安装的东西
我分别使用 python --version 和 python3--version 检查了我当前的 python 和 python3 版本,它们是 Python 2.7.12 和 Python 3.5.2 分别。
Easy Install. $ sudo apt-get install python-setuptools python-dev build-essential
pip. $ sudo easy_install pip
virtualenv. $ sudo pip install --upgrade virtualenv.
python3-dev tools.$sudo apt-get install python3-dev
之后我创建了一个虚拟环境并使用以下命令激活了它
$ virtualenv venv1 --python=/usr/bin/python3
$ source venv/bin/activate
但是现在当我运行第三条命令时
$ pip install -r requirements/dev.txt
甚至
$pip --version
我收到错误
bash: /media/rohan/New Volume/portal/venv1/bin/pip: "/media/rohan/New: bad interpreter: No such file or directory
/venv1/bin 中还存在文件 pip、pip3、pip3.5
我试过 sudo easy_install pip 认为它会在虚拟环境中安装 pip 但它安装到 /usr/local/bin
我也尝试使用代码
创建一个虚拟环境$virtualenv venv --python=/usr/bin/python
但这也不起作用,这次也出现了同样的错误,在 /venv/bin pip pip2 pip2.7 中存在
请帮忙
问题似乎是你的 virtualenv 的路径中有一个 space 没有被转义到它应该在的地方。
注意您收到的错误:
/media/rohan/New: bad interpreter: No such file or directory
所以在路径中 space,它试图 运行 一个不存在的程序 (/media/rohan/New
) 在一个不存在的文件 (Volume/portal/venv1/bin/pip
).
将 New Volume
重命名为没有 space 的名称,例如 new_volume
,然后重新创建 virtualenv 应该可以解决此问题。
我重命名了虚拟环境的文件夹,所以我收到了这个错误。 然后我将 venv 文件夹名称重命名为错误中提到的路径(这是我在创建 venv 时命名的那个。)然后尝试使用 pip 并且成功了。
可能您已经解决了您的问题,但这是为未来的访客准备的。