[英]Scrapy - Homebrew Python error OS X
我正在运行OS X版本10.9.4。
我已经运行brew install python。 我收到以下错误...有人可以向我解释发生了什么,我可以如何解决?
我正在按照本教程进行操作: http ://doc.scrapy.org/en/latest/intro/install.html(最终,我正在尝试下载Scrapy。如果有人可以提供一些非常详细的步骤,请逐步从他们的网站的教程中,我真的很感激)
=> brew install python
==> Installing python dependency: readline
==> Downloading https://downloads.sf.net/project/machomebrew/Bottles/readline-6.3.8.mavericks.bottle.tar.gz
######################################################################## 100.0%
==> Pouring readline-6.3.8.mavericks.bottle.tar.gz
==> Caveats
This formula is keg-only, which means it was not symlinked into /usr/local.
Mac OS X provides similar software, and installing this software in
parallel can cause all kinds of trouble.
OS X provides the BSD libedit library, which shadows libreadline.
er to prevent conflicts when programs look for libreadline we are
ting this GNU Readline installation to keg-only.
Generally there are no consequences of this for you. If you build your
own software and it requires this formula, you'll need to add to your
build variables:
LDFLAGS: -L/usr/local/opt/readline/lib
CPPFLAGS: -I/usr/local/opt/readline/include
==> Summary
🍺 /usr/local/Cellar/readline/6.3.8: 40 files, 2.1M
==> Installing python
==> Downloading https://downloads.sf.net/project/machomebrew/Bottles/python-2.7.8_1.mavericks.bottle.2.tar.gz
######################################################################## 100.0%
==> Pouring python-2.7.8_1.mavericks.bottle.2.tar.gz
==> Caveats
Setuptools and Pip have been installed. To update them
pip install --upgrade setuptools
pip install --upgrade pip
You can install Python packages with
pip install <package>
They will install into the site-package directory
/usr/local/lib/python2.7/site-packages
See: https://github.com/Homebrew/homebrew/wiki/Homebrew-and-Python
.app bundles were installed.
Run `brew linkapps` to symlink these to /Applications.
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/2.7/bin/2to3
/usr/local/bin/2to3-2 -> /Library/Frameworks/Python.framework/Versions/2.7/bin/2to3-2
/usr/local/bin/2to3-2.7 -> /Library/Frameworks/Python.framework/Versions/2.7/bin/2to3-2.7
/usr/local/bin/idle -> /Library/Frameworks/Python.framework/Versions/2.7/bin/idle
/usr/local/bin/idle2 -> /Library/Frameworks/Python.framework/Versions/2.7/bin/idle2
/usr/local/bin/idle2.7 -> /Library/Frameworks/Python.framework/Versions/2.7/bin/idle2.7
/usr/local/bin/pydoc -> /Library/Frameworks/Python.framework/Versions/2.7/bin/pydoc
/usr/local/bin/pydoc2 -> /Library/Frameworks/Python.framework/Versions/2.7/bin/pydoc2
/usr/local/bin/pydoc2.7 -> /Library/Frameworks/Python.framework/Versions/2.7/bin/pydoc2.7
/usr/local/bin/python -> /Library/Frameworks/Python.framework/Versions/2.7/bin/python
/usr/local/bin/python-config -> /Library/Frameworks/Python.framework/Versions/2.7/bin/python-config
/usr/local/bin/python2 -> /Library/Frameworks/Python.framework/Versions/2.7/bin/python2
/usr/local/bin/python2-config -> /Library/Frameworks/Python.framework/Versions/2.7/bin/python2-config
/usr/local/bin/python2.7 -> /Library/Frameworks/Python.framework/Versions/2.7/bin/python2.7
/usr/local/bin/python2.7-config -> /Library/Frameworks/Python.framework/Versions/2.7/bin/python2.7-config
/usr/local/bin/pythonw -> /Library/Frameworks/Python.framework/Versions/2.7/bin/pythonw
/usr/local/bin/pythonw2 -> /Library/Frameworks/Python.framework/Versions/2.7/bin/pythonw2
/usr/local/bin/pythonw2.7 -> /Library/Frameworks/Python.framework/Versions/2.7/bin/pythonw2.7
/usr/local/bin/smtpd.py -> /Library/Frameworks/Python.framework/Versions/2.7/bin/smtpd.py
/usr/local/bin/smtpd2.7.py -> /Library/Frameworks/Python.framework/Versions/2.7/bin/smtpd2.7.py
/usr/local/bin/smtpd2.py -> /Library/Frameworks/Python.framework/Versions/2.7/bin/smtpd2.py
==> /usr/local/Cellar/python/2.7.8_1/bin/python -s setup.py --no-user-cfg install --force --verbose --install-scripts=/usr/local/Cellar/python/2.7.8_1/bin --install-lib=/usr/local/lib/python2.7/site-packa
==> /usr/local/Cellar/python/2.7.8_1/bin/python -s setup.py --no-user-cfg install --force --verbose --install-scripts=/usr/local/Cellar/python/2.7.8_1/bin --install-lib=/usr/local/lib/python2.7/site-packa
==> Summary
🍺 /usr/local/Cellar/python/2.7.8_1: 4776 files, 76M
您的问题是您已经在/usr/local
上安装了Python 2.7(在Apple预安装到/usr
的Python 2.7之上)。 最可能的猜测是您从python.org运行了官方安装程序。
由于Homebrew尝试安装到/usr/local
,并且您不能在同一位置放置两个具有相同名称的东西,因此您不能这样做。
如果您的系统上确实需要三个Python 2.7,则必须为其中一个选择不同的位置。 请注意,现有的实际上只是一堆/Library/Frameworks/Python.framework/Versions/2.7/
的符号链接,而您要安装的新链接实际上只是一堆/usr/local/Cellar/python/2.7.8
的符号链接。 /usr/local/Cellar/python/2.7.8
。 因此,对于任何一个来说,符号链接都不是必需的。 而且Homebrew使得不安装符号链接变得容易:只需不执行link
步骤。
当然,这意味着您不能只运行pip
来安装Homebrew Python的软件包,而必须使用/usr/local/Cellar/python/2.7.8/bin/pip
。 当然,您还必须运行/usr/local/Cellar/python/2.7.8/bin/python
才能使用 Homebrew Python。
不用说,您可以将酒窖目录添加到PATH
…但这将进一步增加您的困惑。 您可以很容易地以以下方式结束,例如, PATH
上的第一个pip
来自Homebrew地窖,而第一个ipython
则来自python.org安装,因此您可以安装但找不到它们—或者,更糟的是, pip
和您的python-config
不匹配,因此每次安装都超出了C编译器的要求,这会使它感到困惑和失败。
所有这些都引发了一个问题,为什么您需要三个Python 2.7版本(至少两个在PATH
),而不是两个版本。 如果您知道自己在做什么,就可以进行这项工作……但是显然不是这种情况。 那么,为什么要让自己变得困难呢?
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.