【发布时间】:2014-03-24 12:35:13
【问题描述】:
我正在使用 Linux (Lubuntu) 并且已经像这样安装了 virtualenv
sudo easy_install virtualenv
然后做了
mkdir virt_env
并创建了一个包含 virtualenv 的文件夹。接下来,我做了
virtualenv virt_env/virt1 --no-site-packages
并创造了环境。接下来,我这样激活它:
source virt_env/virt1/bin/activate
一切顺利。然后,我做到了
sudo pip install Django
它说它已成功安装。然后我做了
pip freeze
并且没有列出 Django。我停用了 virtualenv 并做了
pip freeze
Django 就在那里。为什么它在系统范围内而不是在 virtualenv 中安装 Django?然后我再次激活了 virtualenv 并尝试了
sudo pip install Django
它说
Requirement already satisfied (use --upgrade to upgrade): Django in /usr/local/lib/python2.7/dist-packages
如何将它安装在 virtualenv 而不是系统范围内?
【问题讨论】:
-
不要使用
sudo安装。首先使用 virtualenv 的原因之一是您作为当前用户直接在其中安装东西。我不确定,但使用sudo可能会完全忽略 virtualenv,因此是你的问题。 -
@DanielRoseman 如果我只在 virtualenv 中执行“pip install Django”,则会出现错误,并且回溯中的最后几行是“File”/home/vert_env/virt1/lib/python2.7 /os.py", line 157, in makedirs mkdir(name, mode) OSError: [Errno 13] Permission denied: '/home/vert_env/virt1/build' 在 /home/ayman/.pip/ 中存储失败的调试日志pip.log""
标签: python django installation virtualenv pip