我正在尝试升级macOS上的numpy库,但是pip似乎没有足够的权限来删除numpy.运行`pip install –upgrade pip给我这个回溯:
- ➜ Desktop sudo -H pip install --upgrade numpy
- Collecting numpy
- Using cached numpy-1.11.3-cp27-cp27m-macosx_10_6_intel.macosx_10_9_intel.macosx_10_9_x86_64.macosx_10_10_intel.macosx_10_10_x86_64.whl
- Installing collected packages: numpy
- Found existing installation: numpy 1.8.0rc1
- DEPRECATION: Uninstalling a distutils installed project (numpy) 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 numpy-1.8.0rc1:
- Exception:
- Traceback (most recent call last):
- File "/Library/Python/2.7/site-packages/pip/basecommand.py",line 215,in main
- status = self.run(options,args)
- File "/Library/Python/2.7/site-packages/pip/commands/install.py",line 342,in run
- prefix=options.prefix_path,File "/Library/Python/2.7/site-packages/pip/req/req_set.py",line 778,in install
- requirement.uninstall(auto_confirm=True)
- File "/Library/Python/2.7/site-packages/pip/req/req_install.py",line 754,in uninstall
- paths_to_remove.remove(auto_confirm)
- File "/Library/Python/2.7/site-packages/pip/req/req_uninstall.py",line 115,in remove
- renames(path,new_path)
- File "/Library/Python/2.7/site-packages/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-21oX9d-uninstall/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/numpy-1.8.0rc1-py2.7.egg-info'
所以显然pip在删除/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/numpy-1.8.0rc1-py2.7.egg-info时遇到了问题.尝试在finder中手动删除此文件会给我这个错误:
“numpy-1.8.0rc1-py2.7.egg-info” can’t be modified or deleted because it’s required by OSX.
我怎么解决这个问题? (使用内置numpy不是一个选项,因为tensorflow,我需要的包,需要最新版本).
解决方法
面临同样的问题
sudo pip install –ignore-installed numpy