gpt4 book ai didi

python - libedit/readline 与 OS X 10.7 Lion 上的 ipython 3.2.2 冲突

转载 作者:太空狗 更新时间:2023-10-30 02:34:27 26 4
gpt4 key购买 nike

我一直在尝试在运行 Lion 的 Mac 上设置 ipython 3(运行 2.7 工作正常),但似乎无法摆脱以下错误:

192:~ mlauria$ /Library/Frameworks/Python.framework/Versions/3.2/bin/ipython3
/Library/Frameworks/Python.framework/Versions/3.2/lib/python3.2/site-packages\
/IPython/utils/rlineimpl.py:96: RuntimeWarning: Leopard libedit detected - \
readline will not be well behaved including some crashes on tab completion, and \
incorrect history navigation. It is highly recommended that you install readline,\
which is easy_installable with: 'easy_install readline'
RuntimeWarning)
Python 3.2.2 (v3.2.2:137e45f15c0b, Sep 3 2011, 17:28:59)

easy_install readline 在 ipython 2.7 上正确地修复了这个问题,但这并没有修复 3.2。

最佳答案

这是不幸的,因为越来越多的 OS X 上的 Python 发行版是使用 Apple 提供的 libedit 在 OS X 中构建的,而不是 GPL 许可的 GNU readline 库Apple 不发货。例如,当前用于 OS X 的 64 位/32 位 python.org 安装程序使用 libedit,而仅 32 位的安装程序目前使用 readline,因为 libedit 在旧版本的 OS X 上有问题。虽然 Python 3.2 的 32 位安装程序可以安装在 10.7 上,但如果您需要安装任何 C 扩展模块,在 10.7 上就会有问题,因为 Python 是构建的使用 10.7 不支持的旧 10.4u SDK 和 ppc archs。理想情况下,应修改 iPython 以使其与 libeditreadline 一起正常工作。如果有 Python 错误阻止了它,那么应该提交针对 Python 本身的错误。此外,也许可以说服 PyPI 上 readline 包的维护者构建并放置一个 3.2 二进制包。

否则,假设您已经为 Lion 安装了 Xcode,您可以使用他们的源代码分发自行构建它。如果 Python 3.2 bin 框架不在您的路径中,您需要执行以下操作:

$ export PATH=/Library/Frameworks/Python.framework/Versions/3.2/bin:$PATH

然后,如果您还没有为 Python 3.2 安装 Distribute:

$ curl -O http://python-distribute.org/distribute_setup.py
$ python3.2 distribute_setup.py

然后从 PyPI 下载、构建和安装 readline 包:

$ easy_install-3.2 readline

或者您可以从第三方分销商(如 MacPorts)安装 Python 3.2 版本,它提供了一个 readline 端口(py32-readline)以及一个 iPython 端口.

关于python - libedit/readline 与 OS X 10.7 Lion 上的 ipython 3.2.2 冲突,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8288789/

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