在MacOS Mojave上通过Homebrew安装Python 2时出错

nar*_*ner 13 python macos homebrew python-2.7 macos-mojave

我在MacOS 10.14 Mojave Beta上安装Python 2.7时遇到了很多麻烦.

是的,我知道Python 2已预装在Mac上,但我需要为我的任务构建一个Python框架.

我已经尝试重新安装命令行工具,然后按照此处此处的建议安装Python 2.7 ,但仍然存在问题 - 以下是我的输出:

NickLaptop:~ nicholasarner$ brew reinstall python@2
==> Reinstalling python@2 
==> Downloading https://www.python.org/ftp/python/2.7.15/Python-2.7.15.tar.xz
Already downloaded: /Users/nicholasarner/Library/Caches/Homebrew/python@2-2.7.15.tar.xz
==> ./configure --prefix=/usr/local/Cellar/python@2/2.7.15_1 --enable-ipv6 --datarootdir=/usr/l
==> make
==> make install PYTHONAPPSDIR=/usr/local/Cellar/python@2/2.7.15_1
==> make frameworkinstallextras PYTHONAPPSDIR=/usr/local/Cellar/python@2/2.7.15_1/share/python@
==> Downloading https://files.pythonhosted.org/packages/1a/04/d6f1159feaccdfc508517dba1929eb93a
Already downloaded: /Users/nicholasarner/Library/Caches/Homebrew/python@2--setuptools-39.2.0.zip
==> Downloading https://files.pythonhosted.org/packages/ae/e8/2340d46ecadb1692a1e455f13f75e596d
Already downloaded: /Users/nicholasarner/Library/Caches/Homebrew/python@2--pip-10.0.1.tar.gz
==> Downloading https://files.pythonhosted.org/packages/2a/fb/aefe5d5dbc3f4fe1e815bcdb05cbaab19
Already downloaded: /Users/nicholasarner/Library/Caches/Homebrew/python@2--wheel-0.31.1.tar.gz
==> make html
Last 15 lines from /Users/nicholasarner/Library/Logs/Homebrew/python@2/05.make:
    return build_main(argv)
  File "/usr/local/Cellar/sphinx-doc/1.7.5_1/libexec/lib/python2.7/site-packages/sphinx/cmd/build.py", line 22, in build_main
    from sphinx import cmdline
  File "/usr/local/Cellar/sphinx-doc/1.7.5_1/libexec/lib/python2.7/site-packages/sphinx/cmdline.py", line 23, in <module>
    from sphinx.application import Sphinx
  File "/usr/local/Cellar/sphinx-doc/1.7.5_1/libexec/lib/python2.7/site-packages/sphinx/application.py", line 29, in <module>
    from sphinx.config import Config
  File "/usr/local/Cellar/sphinx-doc/1.7.5_1/libexec/lib/python2.7/site-packages/sphinx/config.py", line 21, in <module>
    from sphinx.util import logging
  File "/usr/local/Cellar/sphinx-doc/1.7.5_1/libexec/lib/python2.7/site-packages/sphinx/util/__init__.py", line 33, in <module>
    from sphinx.util import logging
  File "/usr/local/Cellar/sphinx-doc/1.7.5_1/libexec/lib/python2.7/site-packages/sphinx/util/logging.py", line 106, in <module>
    class SphinxLoggerAdapter(logging.LoggerAdapter):
AttributeError: 'module' object has no attribute 'LoggerAdapter'
make: *** [build] Error 1
Do not report this issue to Homebrew/brew or Homebrew/core!
These open issues may also help:
python 3.7.0 https://github.com/Homebrew/homebrew-core/pull/29490
python upgrade failing https://github.com/Homebrew/homebrew-core/issues/29214
app-engine-python 1.9.70 https://github.com/Homebrew/homebrew-core/pull/28858
molecule: Use correct `docker` python package dependency https://github.com/Homebrew/homebrew-core/pull/28635
[root] formula does not link against python@2 correctly. https://github.com/Homebrew/homebrew-core/issues/29377
clingo add support for lua, use python 3 https://github.com/Homebrew/homebrew-core/pull/28057
OSError: [Errno 1] Operation not permitted for python@2 –with-tcl-tk https://github.com/Homebrew/homebrew-core/issues/28168
Error: You are using macOS 10.14.
We do not provide support for this pre-release version.
You may encounter build failures or other breakages.
Please create pull-requests instead of filing issues.
Error: You are using macOS 10.14.
We do not provide support for this pre-release version.
You may encounter build failures or other breakages.
Please create pull-requests instead of filing issues
Run Code Online (Sandbox Code Playgroud)

任何帮助表示赞赏!

编辑请不要建议Anaconda!对于我正在进行的工作,我特别需要通过Brew构建的Python框架版本.

编辑2 - 我尝试重新安装Sphinx,没有遇到任何问题.这样做后,我install python@2再次尝试跑步,但遇到了和以前一样的问题.

下面是跑步的输出 brew doctor

NickLaptop:~ nicholasarner$ brew doctor
Please note that these warnings are just used to help the Homebrew maintainers
with debugging if you file an issue. If everything you use Homebrew for is
working fine: please don't worry or file an issue; just ignore this. Thanks!

Warning: "config" scripts exist outside your system or Homebrew directories.
`./configure` scripts often look for *-config scripts to determine if
software packages are installed, and what additional flags to use when
compiling and linking.

Having additional scripts in your path can confuse software installed via
Homebrew if the config script overrides a system or Homebrew provided
script of the same name. We found the following "config" scripts:
  /Library/Frameworks/Python.framework/Versions/2.7/bin/python2-config
  /Library/Frameworks/Python.framework/Versions/2.7/bin/python2.7-config
  /Library/Frameworks/Python.framework/Versions/2.7/bin/python-config
  /usr/local/CrossPack-AVR/bin/libusb-config

Warning: Unbrewed dylibs were found in /usr/local/lib.
If you didn't put them there on purpose they could cause problems when
building Homebrew formulae, and may need to be deleted.

Unexpected dylibs:
  /usr/local/lib/libFLAC.8.2.0.dylib
  /usr/local/lib/libcdt.5.dylib
  /usr/local/lib/libcgraph.6.dylib
  /usr/local/lib/libcsnd6.6.0.dylib
  /usr/local/lib/libfltk.1.1.dylib
  /usr/local/lib/libfltk.1.3.dylib
  /usr/local/lib/libfltk_forms.1.3.dylib
  /usr/local/lib/libfltk_images.1.1.dylib
  /usr/local/lib/libfltk_images.1.3.dylib
  /usr/local/lib/libfluidsynth.1.dylib
  /usr/local/lib/libgraph.5.dylib
  /usr/local/lib/libgvc.6.dylib
  /usr/local/lib/libgvpr.2.dylib
  /usr/local/lib/liblo.0.dylib
  /usr/local/lib/libluajit-5.1.2.0.2.dylib
  /usr/local/lib/libmpadec.dylib
  /usr/local/lib/libpathplan.4.dylib
  /usr/local/lib/libpng12.0.dylib
  /usr/local/lib/librealsense.1.12.1.dylib
  /usr/local/lib/libsfml-audio.2.0.dylib
  /usr/local/lib/libsfml-graphics.2.0.dylib
  /usr/local/lib/libsfml-network.2.0.dylib
  /usr/local/lib/libsfml-system.2.0.dylib
  /usr/local/lib/libsfml-window.2.0.dylib
  /usr/local/lib/libsndfile.1.dylib
  /usr/local/lib/libwiiuse.dylib
  /usr/local/lib/libxdot.4.dylib

Warning: Unbrewed header files were found in /usr/local/include.
If you didn't put them there on purpose they could cause problems when
building Homebrew formulae, and may need to be deleted.

Unexpected header files:
  /usr/local/include/graphviz/arith.h
  /usr/local/include/graphviz/cdt.h
  /usr/local/include/graphviz/cgraph.h
  /usr/local/include/graphviz/color.h
  /usr/local/include/graphviz/geom.h
  /usr/local/include/graphviz/graph.h
  /usr/local/include/graphviz/graphviz_version.h
  /usr/local/include/graphviz/gvc.h
  /usr/local/include/graphviz/gvcext.h
  /usr/local/include/graphviz/gvcjob.h
  /usr/local/include/graphviz/gvcommon.h
  /usr/local/include/graphviz/gvconfig.h
  /usr/local/include/graphviz/gvplugin.h
  /usr/local/include/graphviz/gvplugin_device.h
  /usr/local/include/graphviz/gvplugin_layout.h
  /usr/local/include/graphviz/gvplugin_loadimage.h
  /usr/local/include/graphviz/gvplugin_render.h
  /usr/local/include/graphviz/gvplugin_textlayout.h
  /usr/local/include/graphviz/gvpr.h
  /usr/local/include/graphviz/pack.h
  /usr/local/include/graphviz/pathgeom.h
  /usr/local/include/graphviz/pathplan.h
  /usr/local/include/graphviz/textpara.h
  /usr/local/include/graphviz/types.h
  /usr/local/include/graphviz/usershape.h
  /usr/local/include/graphviz/xdot.h
  /usr/local/include/jack/control.h
  /usr/local/include/jack/intclient.h
  /usr/local/include/jack/jack.h
  /usr/local/include/jack/jslist.h
  /usr/local/include/jack/metadata.h
  /usr/local/include/jack/midiport.h
  /usr/local/include/jack/net.h
  /usr/local/include/jack/ringbuffer.h
  /usr/local/include/jack/session.h
  /usr/local/include/jack/statistics.h
  /usr/local/include/jack/systemdeps.h
  /usr/local/include/jack/thread.h
  /usr/local/include/jack/transport.h
  /usr/local/include/jack/types.h
  /usr/local/include/jack/uuid.h
  /usr/local/include/jack/weakjack.h
  /usr/local/include/jack/weakmacros.h
  /usr/local/include/librealsense/rs.h
  /usr/local/include/librealsense/rsutil.h
  /usr/local/include/runt.h
  /usr/local/include/sndfile.h
  /usr/local/include/soundpipe.h
  /usr/local/include/sporth.h

Warning: Unbrewed .la files were found in /usr/local/lib.
If you didn't put them there on purpose they could cause problems when
building Homebrew formulae, and may need to be deleted.

Unexpected .la files:
  /usr/local/lib/liblo.la
  /usr/local/lib/libsndfile.la

Warning: Unbrewed .pc files were found in /usr/local/lib/pkgconfig.
If you didn't put them there on purpose they could cause problems when
building Homebrew formulae, and may need to be deleted.

Unexpected .pc files:
  /usr/local/lib/pkgconfig/jack.pc
  /usr/local/lib/pkgconfig/libcdt.pc
  /usr/local/lib/pkgconfig/libcgraph.pc
  /usr/local/lib/pkgconfig/libgraph.pc
  /usr/local/lib/pkgconfig/libgvc.pc
  /usr/local/lib/pkgconfig/libgvpr.pc
  /usr/local/lib/pkgconfig/libpathplan.pc
  /usr/local/lib/pkgconfig/libxdot.pc
  /usr/local/lib/pkgconfig/sndfile.pc

Warning: Unbrewed static libraries were found in /usr/local/lib.
If you didn't put them there on purpose they could cause problems when
building Homebrew formulae, and may need to be deleted.

Unexpected static libraries:
  /usr/local/lib/liblua.a
  /usr/local/lib/librunt.a
  /usr/local/lib/libsndfile.a
  /usr/local/lib/libsoundpipe.a
  /usr/local/lib/libsporth.a

Warning: You have unlinked kegs in your Cellar
Leaving kegs unlinked can lead to build-trouble and cause brews that depend on
those kegs to fail to run properly once built. Run `brew link` on these:
  lua
  libsndfile
  ruby

Warning: You are using macOS 10.14.
We do not provide support for this pre-release version.
You may encounter build failures or other breakages.
Please create pull-requests instead of filing issues.

Warning: Broken symlinks were found. Remove them with `brew prune`:
  /usr/local/bin/git-remote-keybase
  /usr/local/bin/keybase
  /usr/local/bin/lua
  /usr/local/bin/lua-5.2
  /usr/local/bin/lua5.2
  /usr/local/bin/luac
  /usr/local/bin/luac-5.2
  /usr/local/bin/luac5.2
  /usr/local/bin/luarocks
  /usr/local/bin/luarocks-5.2
  /usr/local/bin/luarocks-admin
  /usr/local/bin/luarocks-admin-5.2
  /usr/local/etc/bash_completion.d/_brew_services
  /usr/local/etc/fonts/conf.d/10-hinting-slight.conf
  /usr/local/etc/fonts/conf.d/10-scale-bitmap-fonts.conf
  /usr/local/etc/fonts/conf.d/20-unhint-small-vera.conf
  /usr/local/etc/fonts/conf.d/30-metric-aliases.conf
  /usr/local/etc/fonts/conf.d/30-urw-aliases.conf
  /usr/local/etc/fonts/conf.d/40-nonlatin.conf
  /usr/local/etc/fonts/conf.d/45-latin.conf
  /usr/local/etc/fonts/conf.d/49-sansserif.conf
  /usr/local/etc/fonts/conf.d/50-user.conf
  /usr/local/etc/fonts/conf.d/51-local.conf
  /usr/local/etc/fonts/conf.d/60-latin.conf
  /usr/local/etc/fonts/conf.d/65-fonts-persian.conf
  /usr/local/etc/fonts/conf.d/65-nonlatin.conf
  /usr/local/etc/fonts/conf.d/69-unifont.conf
  /usr/local/etc/fonts/conf.d/80-delicious.conf
  /usr/local/etc/fonts/conf.d/90-synthetic.conf
  /usr/local/include/lauxlib.h
  /usr/local/include/lua.h
  /usr/local/include/lua.hpp
  /usr/local/include/lua5.2
  /usr/local/include/luaconf.h
  /usr/local/include/lualib.h
  /usr/local/opt/qt5

Warning: Some installed formulae are missing dependencies.
You should `brew install` the missing dependencies:
  brew install harfbuzz mono

Run `brew missing` for more details.
Run Code Online (Sandbox Code Playgroud)

这是运行时的输出brew config:

HOMEBREW_VERSION: 1.6.9-39-g376f67b
ORIGIN: https://github.com/Homebrew/brew.git
HEAD: 376f67bf2c8893a06bf1e42a2375d58e9d8c2670
Last commit: 2 hours ago
Core tap ORIGIN: https://github.com/Homebrew/homebrew-core
Core tap HEAD: 69b99b69ff3a9c686b9d9fb0102927c5dd2f373b
Core tap last commit: 3 hours ago
HOMEBREW_PREFIX: /usr/local
HOMEBREW_DEV_CMD_RUN: 1
CPU: quad-core 64-bit skylake
Homebrew Ruby: 2.3.3 => /usr/local/Homebrew/Library/Homebrew/vendor/portable-ruby/2.3.3_2/bin/ruby
Clang: 10.0 build 1000
Git: 2.17.1 => /usr/local/bin/git
Curl: 7.54.0 => /usr/bin/curl
Java: 1.8.0_131
macOS: 10.14-x86_64
CLT: 10.0.0.0.1.1529074627
CLT headers: 10.0.0.0.1.1529074627
Xcode: 10.0 => /Applications/Xcode-beta.app/Contents/Developer
XQuartz: 2.7.11 => /opt/X11
Run Code Online (Sandbox Code Playgroud)

jmh*_*jmh -3

我建议你使用python 的Anaconda Distribution。Anaconda 提供 python 2.7 和 python 3.6 以及两个版本的易于使用的 python 安装程序。Anaconda 页面解释了如何在 Mac 上安装和运行 python。