使用virtualenv在Python 3.4中安装django1.7

时间:2014-04-23 22:02:10

标签: python django python-2.7 python-3.4

关于使用配置为Python 3.4的virtualenv设置django 1.7,我遇到了一些障碍。

我使用以下方法创建了一个Python 3.4 virtualenv:

sudo virtualenv --no-site-packages -p /usr/bin/python3.4 venv

然后我使用以下方法激活了env:

source venv/bin/activate

在激活的virtualenv中,我尝试过:

sudo pip install https://www.djangoproject.com/download/1.7b1/tarball/

这将在Python 2.7目录中安装django,而不是在虚拟环境中安装。 使用pip freeze检查显示没有已安装的软件包

我尝试下载django 1.7的zip并在环境中使用python setup.py install,但仍然在env和2.7目录之外进行安装..

任何关于我做错事的建议或指示都会非常感激!!

3 个答案:

答案 0 :(得分:25)

在创建virtualenv时以及在virtualenv中使用pip进行安装时,

sudo是不必要的。请尝试以下方法:

$ virtualenv -p /usr/bin/python3.4 venv

$ source venv/bin/activate

(此时,您可以检查您的virtualenv是否处于活动状态并使用带有which python的python 3.4,它应该打印类似/home/user/projects/venv/bin/pythonpython --version的内容,它们应该打印Python 3.4 .X)

$ pip install https://www.djangoproject.com/download/1.7b1/tarball/

答案 1 :(得分:2)

我认为问题是sudo。 virtualenv的观点是你不必以root身份运行任何东西 - virtualenv将建立一个可以用户身份安装软件包的环境。我想问题是pip假设你使用sudo建议你想在系统软件包目录中安装软件包......或者sudo本身正在覆盖对你的环境的virtualenv更改,而支持root的默认环境。

创建一个没有sudo的新virtualenv。然后激活它并运行pip install而不使用sudo

答案 2 :(得分:0)

尝试以下

virtualenv --no-site-packages --distribute -p /usr/bin/python3 ~/.virtualenvs/py3

workon py3

pip install Django==1.7.4