关于使用配置为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目录之外进行安装..
任何关于我做错事的建议或指示都会非常感激!!
答案 0 :(得分:25)
sudo
是不必要的。请尝试以下方法:
$ virtualenv -p /usr/bin/python3.4 venv
$ source venv/bin/activate
(此时,您可以检查您的virtualenv是否处于活动状态并使用带有which python
的python 3.4,它应该打印类似/home/user/projects/venv/bin/python
和python --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