【问题标题】:My Idle (idle3) from python installed with homebrew on a mac crashes我在 Mac 上安装了自制软件的 Python 中的 Idle (idle3) 崩溃了
【发布时间】:2019-03-19 23:52:54
【问题描述】:

Idle3(python3 的)在窗口中并使用中间鼠标滚轮时经常崩溃。

终端中总是留下相同的错误:

Traceback(最近一次调用最后一次):文件“/usr/local/bin/idle3”,第 5 行,在 main() 文件中 "/usr/local/Cellar/python/3.7.0/Frameworks/Python.framework/Versions/3.7/lib/python3.7/idlelib/pyshell.py", 第 1548 行,主要 root.mainloop() 文件 “/usr/local/Cellar/python/3.7.0/Frameworks/Python.framework/Versions/3.7/lib/python3.7/tkinter/init.py”,第 1280 行,在 mainloop self .tk.mainloop(n)

UnicodeDecodeError:“utf-8”编解码器无法解码位置 0 中的字节 0xFF:无效的继续字节 `

【问题讨论】:

    标签: python python-3.x macos


    【解决方案1】:

    问题似乎是 brew 安装了没有 tcl-tk 的 python,因此使用了 mac-os 中的旧 tcl-tk。这个在解释一些鼠标滚轮命令时有问题。

    解决方案: brew reinstall python --with-tcl-tk

    【讨论】:

    • --with-tcl-tk 不再适用于最新的 brew。运行 brew install python --with-tcl-tk 仍然指向系统 Tcl/TK 8.5.9。
    • @kakyo 你仍然可以修补本地 python 公式以使用正确的 tcl-tk 并使用 --build-from-source 安装它 - 这对我来说适用于 ActiveTcl(但不知何故不适用于来自 tcl-tk冲泡)。
    • @ashotyanski 如何正确“猴子补丁”本地 python 公式?对 Tcl/Tk 的唯一引用仅是 Mac 的系统 Tk 添加到 cflags 的位置。那是我要改变的地方吗?
    • @Ignat 我在/usr/local/Homebrew/Library/Taps/homebrew/homebrew-core/Formula/python.rb 找到了我的python 公式,所以你只需打开它并在install 方法中添加你的cflags。此外,您可能会发现这段代码特别有趣 - github.com/Homebrew/homebrew-core/blob/master/Formula/…
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-10-14
    • 1970-01-01
    • 2023-03-14
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多