首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >它不想安装在我的虚拟环境中

它不想安装在我的虚拟环境中
EN

Stack Overflow用户
提问于 2017-09-12 07:59:11
回答 2查看 39关注 0票数 0
代码语言:javascript
复制
(goat) ┌─╼ [~/Projects/Personal_Projects/Goat_TDD_Project/superlists]
└╼ pip3 install django-extensions
Collecting django-extensions
  Using cached django_extensions-1.9.0-py2.py3-none-any.whl
Requirement already satisfied: six>=1.2 in /home/jeremie/.local/lib/python3.5/site-packages (from django-extensions)
Installing collected packages: django-extensions
Exception:
Traceback (most recent call last):
  File "/home/jeremie/.local/lib/python3.5/site-packages/pip/basecommand.py", line 215, in main
    status = self.run(options, args)
  File "/home/jeremie/.local/lib/python3.5/site-packages/pip/commands/install.py", line 342, in run
    prefix=options.prefix_path,
  File "/home/jeremie/.local/lib/python3.5/site-packages/pip/req/req_set.py", line 784, in install
    **kwargs
  File "/home/jeremie/.local/lib/python3.5/site-packages/pip/req/req_install.py", line 851, in install
    self.move_wheel_files(self.source_dir, root=root, prefix=prefix)
  File "/home/jeremie/.local/lib/python3.5/site-packages/pip/req/req_install.py", line 1064, in move_wheel_files
    isolated=self.isolated,
  File "/home/jeremie/.local/lib/python3.5/site-packages/pip/wheel.py", line 345, in move_wheel_files
    clobber(source, lib_dir, True)
  File "/home/jeremie/.local/lib/python3.5/site-packages/pip/wheel.py", line 316, in clobber
    ensure_dir(destdir)
  File "/home/jeremie/.local/lib/python3.5/site-packages/pip/utils/__init__.py", line 83, in ensure_dir
    os.makedirs(path)
  File "/usr/lib/python3.5/os.py", line 241, in makedirs
    mkdir(name, mode)
PermissionError: [Errno 13] Permission denied: '/usr/lib/python3.5/site-packages/django_extensions'

当我尝试安装django-extensions时,我正在尝试理解为什么会出现这个问题。然而,我在virtualenv (包装器) goat中,但它不想安装在其中。我该怎么解决这个问题呢?

更新

在virtualenv上使用ls -ld,我得到了

代码语言:javascript
复制
drwxrwxr-x 7 jeremie jeremie 4096 Sep  9 17:10 goat
EN

回答 2

Stack Overflow用户

发布于 2017-09-12 08:20:27

如果您以root身份创建了您的virtualenv,则可能会出现此问题。

如果是这样,您可以运行以下命令来修复它:

代码语言:javascript
复制
sudo chown -R your_username:your_username path/to/virtuaelenv/

更新

发生这种情况的另一个原因是您已经将pip (或本例中的pip3 )安装为根目录。

从您的错误中,您可以看到它正在尝试将包安装到您的virtualenv之外的根级别。

要验证这一点,请检查pip安装的权限:

代码语言:javascript
复制
user@host:~$ which pip3 
/usr/local/bin/pip3
user@host:~$ ls -l /usr/local/bin/pip3
-rwxr-xr-x 1 root root ... etc, etc

或者只运行一行代码:

代码语言:javascript
复制
ls -l `which pip3`

您可以通过卸载pip3并在不使用sudo命令的情况下重新安装它来修复此问题。

票数 0
EN

Stack Overflow用户

发布于 2017-09-12 12:10:57

你不需要在virtualenv中使用'pip3‘。

所以只需使用:

代码语言:javascript
复制
  pip install django-extensions

激活虚拟环境后

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/46165938

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档