我的Pip指向错误的路径,无法在virtualenv中安装软件包

时间:2014-07-30 00:16:52

标签: pip virtualenv python-3.4 ubuntu-14.04

我想在ubuntu 14.04上用python3.4和pip3创建一个virtualenv,但我不能这样做。我已经尝试过我的普通ubuntu14.04LTS机器和livecd的新机器,从头开始再次检查它,但我无法使它工作。我已经尝试过virtualenv(有和没有virtualenvwrapper)和我发现的许多不同的命令,工具和脚本没有运气。两天失去了这个,弄乱了Python2.7并特别推出了不同的版本。让我尽可能详细地解释一下,以帮助您理解:

如您所知,Ubuntu 14.04LTS默认安装了Python3.4,这个Python版本附带了一个名为py-venv-3.4的工具,因此您不需要使用虚拟环境,这就是我的方式现在尝试。

从干净的live-cd我尝试以下内容:

sudo apt-get update
sudo pyvenv-3.4 my env

它会抛出错误:

Error: Command '['/home/ubuntu/Desktop/mi_entorno/bin/python3.4', '-Im',      'ensurepip', '--upgrade', '--default-pip']' returned non-zero exit status 1

所以我必须创建它而不用pip才能使它工作。

sudo pyvenv-3.4 --clear --without-pip my_env
sudo source my_env/bin/activate

从现在开始,我就在虚拟环境中。

此时我很好,因为在环境中python命令指向正确的版本(3.4)。第一个共同问题解决了但问题来自pip。当然,当我检查“没有点”时,pip3不起作用,我必须安装它。

sudo apt-get install python3-pip
sudo pip3 --version

乐趣来了:

pip 1.5.4 from /usr/lib/python3/dist-packages (python 3.4)

指向正确版本的python,但不是内部版本,而是外部版本,没有任何理由(外部,pip3默认是卸载的!)。但是为了确保这是错误的,我尝试在环境中安装django并检查它。

sudo pip3 install django
sudo python
Python 3.4.0 (default, Apr 11 2014, 13:05:11) 
[GCC 4.8.2] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import django
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ImportError: No module named 'django'
>>>

大。现在我走出环境回到我的“普通”外壳:

deactivate
python3
Python 3.4.0 (default, Apr 11 2014, 13:05:11) 
[GCC 4.8.2] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import django
>>> django.VERSION
(1, 6, 5, 'final', 0)
>>> 

并且django按预期工作,因为pip将其安装在环境之外。我是Python包装依赖项的新手,在过去的两天里,我已经失去了近20个小时。有没有人有一个简单的方法用python3.4和pip3在ubuntu14.04上创建一个虚拟环境?我不认为我要求太多:(

任何帮助都是一种祝福。

0 个答案:

没有答案