我一直在尝试安装NumPy,并且一直有一段残酷的时间。无论我尝试什么,我都会收到异常错误。我用了命令
$pip install numpy
但它抛出了这个错误
Exception:
Traceback (most recent call last):
File "/Library/Python/2.7/site-packages/pip-6.1.1-py2.7.egg/pip/basecommand.py", line 246, in main
status = self.run(options, args)
File "/Library/Python/2.7/site-packages/pip-6.1.1-py2.7.egg/pip/commands/install.py", line 352, in run
root=options.root_path,
File "/Library/Python/2.7/site-packages/pip-6.1.1-py2.7.egg/pip/req/req_set.py", line 693, in install
**kwargs
File "/Library/Python/2.7/site-packages/pip-6.1.1-py2.7.egg/pip/req/req_install.py", line 817, in install
self.move_wheel_files(self.source_dir, root=root)
File "/Library/Python/2.7/site-packages/pip-6.1.1-py2.7.egg/pip/req/req_install.py", line 1018, in move_wheel_files
isolated=self.isolated,
File "/Library/Python/2.7/site-packages/pip-6.1.1-py2.7.egg/pip/wheel.py", line 269, in move_wheel_files
clobber(source, dest, False, fixer=fixer, filter=filter)
File "/Library/Python/2.7/site-packages/pip-6.1.1-py2.7.egg/pip/wheel.py", line 215, in clobber
shutil.copyfile(srcfile, destfile)
File "/usr/local/Cellar/python/2.7.9/Frameworks/Python.framework/Versions/2.7/lib/python2.7/shutil.py", line 83, in copyfile
with open(dst, 'wb') as fdst:
IOError: [Errno 13] Permission denied: '/usr/local/man/man1/nosetests.1'
只是为了检查,我在Python中使用import来查看它是否有任何东西,但它也引发了错误。我不知道发生了什么事。
$pip install scipy
没有给我任何问题。任何帮助表示赞赏!我似乎无法找到解决这个问题的方法。
谢谢!
答案 0 :(得分:6)
Homebrew尝试将/ usr / local写入,因此您不需要.highlight { background-color:#ccffcc; }
。 See the FAQ for details.
但是,如果您不小心使用sudo
一次 - 或者如果您运行的某个其他安装程序将内容安装到sudo
但未实现您想要它的Homebrew风格 - 那么您将开始收到错误,当您的Homebrew内容尝试修改使用/usr/local
保存的文件时。
如果您尝试使用Apple预装的Python 2.7和Homebrew Python 2.7,则会出现一个特殊问题:他们都希望将脚本安装到sudo
,手册页安装到/usr/local/bin
等。 Apple想要使用sudo。
所以,最有可能的是,你过去为Apple的Python做了/usr/local/man
,现在sudo pip install nose
用于Homebrew的Python试图覆盖它的文件并且没有权限这样做。 (或者也许不是pip install nose
本身,而是在没有你意识到的情况下需要nose
的其他东西。)
将nose
与Homebrew Python一起使用会让问题变得更糟;不要这样做。
正确的解决方案是:
但是在这一点上,你已经搞砸了,我怀疑你想从头开始重新安装你的操作系统,对吗?
您可以通过sudo
为前者解决问题,或者卸载使用Apple的Python安装的所有内容。 (你无法卸载Apple的Python;这会破坏操作系统,下一次操作系统更新无论如何都会撤消它...)然后,无论如何,你可能想要重新安装你选择的任何Python所需的每个软件包。为了安全起见。
或者,对于快速和肮脏的解决方案,每次出现这样的错误时,您都可以删除冲突的文件(brew uninstall python
)或使其可覆盖(sudo rm /usr/local/man/man1/nosetests.1
);那么,你的sudo chmod a+w /usr/local/man/man1/nosetests.1
就可以了。直到下一个错误,你可以用同样的方式修复。
答案 1 :(得分:-3)
只需运行cmd作为管理员,它对我有用。