【发布时间】:2016-09-26 02:04:07
【问题描述】:
尽管我已经安装了 2.6、2.7.10 和 3.4.0,但我仍在按照 Scrapy 安装指南安装新的 python (2.7.11) 副本。在出现这些错误的最后一步之前,安装一直很好
==> Pouring python-2.7.11.el_capitan.bottle.2.tar.gz
Error: The `brew link` step did not complete successfully
The formula built, but is not symlinked into /usr/local
Could not symlink bin/2to3
Target /usr/local/bin/2to3
already exists. You may want to remove it:
rm '/usr/local/bin/2to3'
To force the link and overwrite all conflicting files:
brew link --overwrite python
To list all files that would be deleted:
brew link --overwrite --dry-run python
Possible conflicting files are:
/usr/local/bin/2to3 -> /Library/Frameworks/Python.framework/Versions/3.4/bin/2to3
Error: Permission denied - /usr/local/Frameworks
还有
ls -l /usr/local/Frameworks
ls: /usr/local/Frameworks: No such file or directory
和
ls -l /usr/local/bin/2to3
lrwxr-xr-x 1 root wheel 66 7 Apr 2014 /usr/local/bin/2to3 -> ../../../Library/Frameworks/Python.framework/Versions/3.4/bin/2to3
我的问题:
1) 我应该使用sudo brew install python 而不是brew install python 吗?希望我不需要卸载 2.7.11 并重新开始。
2) 如果我执行他们建议的rm '/usr/local/bin/2to3' 和brew link --overwrite python 的两个步骤,我是否仍然可以为非 Scrapy 目的运行 python 3.4.0?大概我应该用sudo做这些?
3) 如果我做了#2,/usr/local/Frameworks 上的权限问题会自行解决还是我需要做其他事情?
跟进:
设置 virtualenv 的建议可能是一个不错的建议。但我想我可能需要先完成安装。
我现在已经删除了 2to3。我还尝试使用 sudo 运行 brew link --overwrite python,但它以这种懦弱的方式拒绝 sudo brew link msg 而返回,所以我就继续执行,不使用 sudo。
但是 brew 链接在权限上仍然失败
brew link --overwrite python
Linking /usr/local/Cellar/python/2.7.11... Error: Permission denied - /usr/local/Frameworks
然而
ls -l /usr/local/Frameworks
ls: /usr/local/Frameworks: No such file or directory
此外,/usr/local/bin 中的许多与 python 相关的链接都指向现有的 3.4.0(那些链接归 root)和新的 2.7.11(归我所有)。
那我现在该怎么办?非常感谢。
【问题讨论】:
-
我建议使用virtual environment 并使用您想要的所有配置
-
谢谢,eLRuLL。您设置 virtualenv 的建议似乎很有意义。但是我不需要先完成安装吗?我已尝试执行 brew 在原始 errmsgs 中建议的步骤,但由于对不存在的文件/文件夹的权限,它仍然无法进行链接!
标签: python scrapy symlink python-2to3