2015-08-19 143 views
51

我最近擦除了我的Mac並重新安裝了OSX El Capitan公共測試版3.我用sudo easy_install pip安裝了pip,並安裝了virtualenv與sudo pip install virtualenv,沒有任何問題。無法在OSX 10.11上安裝virtualenvwrapper El Capitan

現在,當我嘗試sudo pip install virtualenvwrapper,我得到如下:

Users-Air:~ User$ sudo pip install virtualenvwrapper 

The directory '/Users/User/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/User/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. 
Collecting virtualenvwrapper 
    Downloading virtualenvwrapper-4.6.0-py2.py3-none-any.whl 
Requirement already satisfied (use --upgrade to upgrade): virtualenv in /Library/Python/2.7/site-packages (from virtualenvwrapper) 
Requirement already satisfied (use --upgrade to upgrade): virtualenv-clone in /Library/Python/2.7/site-packages (from virtualenvwrapper) 
Collecting stevedore (from virtualenvwrapper) 
    Downloading stevedore-1.7.0-py2.py3-none-any.whl 
Requirement already satisfied (use --upgrade to upgrade): pbr<2.0,>=1.3 in /Library/Python/2.7/site-packages (from stevedore->virtualenvwrapper) 
Requirement already satisfied (use --upgrade to upgrade): argparse in /Library/Python/2.7/site-packages (from stevedore->virtualenvwrapper) 
Collecting six>=1.9.0 (from stevedore->virtualenvwrapper) 
    Downloading six-1.9.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-7.1.0-py2.7.egg/pip/basecommand.py", line 223, in main 
    status = self.run(options, args) 
    File "/Library/Python/2.7/site-packages/pip-7.1.0-py2.7.egg/pip/commands/install.py", line 299, in run 
    root=options.root_path, 
    File "/Library/Python/2.7/site-packages/pip-7.1.0-py2.7.egg/pip/req/req_set.py", line 640, in install 
    requirement.uninstall(auto_confirm=True) 
    File "/Library/Python/2.7/site-packages/pip-7.1.0-py2.7.egg/pip/req/req_install.py", line 726, in uninstall 
    paths_to_remove.remove(auto_confirm) 
    File "/Library/Python/2.7/site-packages/pip-7.1.0-py2.7.egg/pip/req/req_uninstall.py", line 125, in remove 
    renames(path, new_path) 
    File "/Library/Python/2.7/site-packages/pip-7.1.0-py2.7.egg/pip/utils/__init__.py", line 314, 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-tTNnKQ-uninstall/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/six-1.4.1-py2.7.egg-info' 

由於這個問題似乎是與six包,手工試圖用sudo pip uninstall six導致同樣的錯誤將其卸載。輸出建議使用-H標誌爲好,但我仍然得到幾乎相同的錯誤:

Users-Air:~ User$ sudo -H pip install virtualenvwrapper 
Collecting virtualenvwrapper 
    Downloading virtualenvwrapper-4.6.0-py2.py3-none-any.whl 
Requirement already satisfied (use --upgrade to upgrade): virtualenv in /Library/Python/2.7/site-packages (from virtualenvwrapper) 
Requirement already satisfied (use --upgrade to upgrade): virtualenv-clone in /Library/Python/2.7/site-packages (from virtualenvwrapper) 
Collecting stevedore (from virtualenvwrapper) 
    Downloading stevedore-1.7.0-py2.py3-none-any.whl 
Requirement already satisfied (use --upgrade to upgrade): pbr<2.0,>=1.3 in /Library/Python/2.7/site-packages (from stevedore->virtualenvwrapper) 
Requirement already satisfied (use --upgrade to upgrade): argparse in /Library/Python/2.7/site-packages (from stevedore->virtualenvwrapper) 
Collecting six>=1.9.0 (from stevedore->virtualenvwrapper) 
    Downloading six-1.9.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-7.1.0-py2.7.egg/pip/basecommand.py", line 223, in main 
    status = self.run(options, args) 
    File "/Library/Python/2.7/site-packages/pip-7.1.0-py2.7.egg/pip/commands/install.py", line 299, in run 
    root=options.root_path, 
    File "/Library/Python/2.7/site-packages/pip-7.1.0-py2.7.egg/pip/req/req_set.py", line 640, in install 
    requirement.uninstall(auto_confirm=True) 
    File "/Library/Python/2.7/site-packages/pip-7.1.0-py2.7.egg/pip/req/req_install.py", line 726, in uninstall 
    paths_to_remove.remove(auto_confirm) 
    File "/Library/Python/2.7/site-packages/pip-7.1.0-py2.7.egg/pip/req/req_uninstall.py", line 125, in remove 
    renames(path, new_path) 
    File "/Library/Python/2.7/site-packages/pip-7.1.0-py2.7.egg/pip/utils/__init__.py", line 314, 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-fwQzor-uninstall/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/six-1.4.1-py2.7.egg-info' 

我有sudo nvram boot-args="rootless=0"禁用無根的,這也沒有影響。任何幫助,將不勝感激!

+0

https://github.com/pypa/pip/issues/3165 – Nithin

回答

81

您可以手動安裝庫存10.11安裝中不存在的依賴關係,然後使用--no-deps安裝其他包來忽略依賴關係。這樣它將跳過six(和​​也已經安裝)。這適用於我的10.11 beta 6安裝:

sudo pip install pbr 
sudo pip install --no-deps stevedore 
sudo pip install --no-deps virtualenvwrapper 

而且不需要禁用無根。

+0

它在版本10.11.1上不起作用 –

+0

我剛剛在10.11.1上試過了,它工作得很好。 –

+0

這工作在10.12.1。謝謝! – aribo

61
sudo pip install virtualenvwrapper --ignore-installed six 

而且工作

+0

10.12.6 – ehacinom

0

命令成功運行了我,但是當我去/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages但virtualenvwrapper.sh未找到。我相信如果沒有找到virtualenvwrapper.sh,我們就無法運行虛擬環境。 有什麼想法?

+0

'find/Library -name virtualenvwrapper.sh' – boatcoder

相關問題