gpt4 book ai didi

python - brew install python for scrapy - 符号链接(symbolic link)和权限问题

转载 作者:太空宇宙 更新时间:2023-11-04 10:12:28 24 4
gpt4 key购买 nike

尽管我已经拥有 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 link 仍然在权限上失败

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(归我所有)。

那我现在该怎么办?非常感谢。

最佳答案

根据来自不同论坛的大量帖子,最推荐的最佳做法是让自制软件安装你需要的所有版本的 python,单独保留 OSX 捆绑的 python(未使用)并删除所有其他版本,因为自制软件不一定能很好地运行和他们在一起。

根据 this ,自制软件应该能够处理共存的 2.7 和 3.x python。所以我关注了this advice直接从 python.org 删除我之前自己安装的 3.4。

我进一步遵循了 brew doctor 提供的建议,这些建议与上面链接中提到的关于如何删除非自制 python 的步骤非常相似。随后

brew link --overwrite python
Linking /usr/local/Cellar/python/2.7.11... 5 symlinks created

brew doctor
Your system is ready to brew.

看来homebrew安装的2.7.11终于完成了。

我现在将使用 homebrew 安装最新的 3.x 版本并更新这篇文章。如果成功,我将进一步设置 virtualenv 以安装 Scrapy。

跟进:

brew install python3成功安装Python 3.5.1

pip install virtualenv成功安装virtualenv 15.0.1

virtualenv -p/usr/local/bin/python2.7 Scrapy使用2.7成功搭建“Scrapy”虚拟环境

source Scrapy/bin/activate 启动“Scrapy”虚拟环境

pip install lxml成功安装lxml 3.6.0

pip install Scrapy成功安装Scrapy 1.1.0

pip freeze > Scrapy/requirements.txt 生成的依赖列表

deactivate 退出“Scrapy”虚拟环境

明天将试用 Scrapy 教程,看看所有这些是否真的有效

关于python - brew install python for scrapy - 符号链接(symbolic link)和权限问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37488439/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com