安装 virtualenvwrapper 时出错

Error installing virtualenvwrapper

我在尝试安装 virtualenvwrapper 时收到如下所示的错误。我做错了什么?

我正在使用 Mac OSX。我正在使用 pip 作为 sudo 安装。如果我在没有 sudo

的情况下使用 pip,我也会遇到同样的错误
Last login: Tue Aug 22 09:45:59 on ttys001
John:~ tcl$ sudo pip install virtualenvwrapper
Password:
The directory '/Users/tcl/Library/Caches/pip/http' or its parent directory is not owned by the current user and the cache has been disabled. Please check the permissions and owner of that directory. If executing pip with sudo, you may want sudo's -H flag.
The directory '/Users/tcl/Library/Caches/pip' or its parent directory is not owned by the current user and caching wheels has been disabled. check the permissions and owner of that directory. If executing pip with sudo, you may want sudo's -H flag.
Collecting virtualenvwrapper
  Downloading virtualenvwrapper-4.7.2.tar.gz (90kB)
    100% |████████████████████████████████| 92kB 1.2MB/s 
Requirement already satisfied: virtualenv in /Library/Python/2.7/site-packages (from virtualenvwrapper)
Requirement already satisfied: virtualenv-clone in /Library/Python/2.7/site-packages (from virtualenvwrapper)
Collecting stevedore (from virtualenvwrapper)
  Downloading stevedore-1.25.0-py2.py3-none-any.whl
Requirement already satisfied: pbr!=2.1.0,>=2.0.0 in /Library/Python/2.7/site-packages (from stevedore->virtualenvwrapper)
Collecting six>=1.9.0 (from stevedore->virtualenvwrapper)
  Downloading six-1.10.0-py2.py3-none-any.whl
Installing collected packages: six, stevedore, virtualenvwrapper
  Found existing installation: six 1.4.1
    DEPRECATION: Uninstalling a distutils installed project (six) has been deprecated and will be removed in a future version. This is due to the fact that uninstalling a distutils project will only partially uninstall the project.
    Uninstalling six-1.4.1:
Exception:
Traceback (most recent call last):
  File "/Library/Python/2.7/site-packages/pip-9.0.1-py2.7.egg/pip/basecommand.py", line 215, in main
    status = self.run(options, args)
  File "/Library/Python/2.7/site-packages/pip-9.0.1-py2.7.egg/pip/commands/install.py", line 342, in run
    prefix=options.prefix_path,
  File "/Library/Python/2.7/site-packages/pip-9.0.1-py2.7.egg/pip/req/req_set.py", line 778, in install
    requirement.uninstall(auto_confirm=True)
  File "/Library/Python/2.7/site-packages/pip-9.0.1-py2.7.egg/pip/req/req_install.py", line 754, in uninstall
    paths_to_remove.remove(auto_confirm)
  File "/Library/Python/2.7/site-packages/pip-9.0.1-py2.7.egg/pip/req/req_uninstall.py", line 115, in remove
    renames(path, new_path)
  File "/Library/Python/2.7/site-packages/pip-9.0.1-py2.7.egg/pip/utils/__init__.py", line 267, in renames
    shutil.move(old, new)
  File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/shutil.py", line 302, in move
    copy2(src, real_dst)
  File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/shutil.py", line 131, in copy2
    copystat(src, dst)
  File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/shutil.py", line 103, in copystat
    os.chflags(dst, st.st_flags)
OSError: [Errno 1] Operation not permitted: '/tmp/pip-TtCbYs-uninstall/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/six-1.4.1-py2.7.egg-info'
John:~ tcl$ 

我在 Google 中没有看到这个特定错误。

我在搜索不太具体的查询时确实得到了很多结果:

"sudo pip install virtualenvwrapper" error

但是这些结果有多种解决方案(解决方法),我不确定是否适合我当前的问题。

我认为它已经涵盖了

我不想听起来刺耳或令人讨厌,但这个问题很容易用谷歌搜索,并且在整个网络和 Whosebug 上都得到了一次又一次的回答。

我 运行 前一段时间就遇到过这个确切的问题。以下 2 个步骤解决了问题:

  1. 在 sudo 命令中使用 -H 标志
  2. 像这样忽略"six"包的安装

    pip install virtualenvwrapper --ignore-installed six

希望这对您有所帮助。另一方面,最好通过 Brew 包管理器安装它。