在 macOS 上更新 Homebrew python3 的 tcl/tk 版本

kak*_*kyo 4 python tkinter tcltk

我的环境:

来自 Homebrew 的 macOS 10.13 python 3.7.1

我有很多关于 Tcl/TK 8.5 下的 Tcl/TK 怪癖,/System/Library/Frameworks/Tcl.framework/Versions/8.5/我想升级我的 Tcl/TK。

但是有了这个问题,我找不到任何升级的工作提示,包括:

我的测试结果

  1. --with-tcl-tk不再适用于最新的 Homebrew。运行brew install python --with-tcl-tk仍然指向系统 Tcl/TK 8.5.9。
  2. 以上内容也通过卸载/安装周期进行了测试。
  3. 安装最新的 ActiveTcl 后,Python 继续使用系统 Tcl/TK。

kak*_*kyo 8

在多次失败之后,我得出结论,使这项工作最简单的方法是完全忘记 Homebrew,卸载其 python 包。

然后安装最新的 ActiveTcl,然后安装 python.org 版本。python.org 版本将在最新的“系统”Tcl/TK 之上工作,安装 ActiveTcl 后将刷新。不幸的是,Homebrew 忽略了它。

来自 python.org 的当前 3.7.2 是用 Tcl/TK 8.6.8 编译的:

$ python3
Python 3.7.2 (v3.7.2:9a3ffc0492, Dec 24 2018, 02:44:43) 
[Clang 6.0 (clang-600.0.57)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import tkinter as tk
>>> print(tk.Tcl().eval('info patchlevel'))
8.6.8
Run Code Online (Sandbox Code Playgroud)

更新后,一些错误,例如在菜单上显示错误复选标记的复选按钮消失了。

  • 自制软件在安装软件包时决定删除选项真是太可惜了。猜猜是这样的,放弃自制的python并在没有管理器的情况下安装,或者等到一个新的包发布,python和tcl/TK相结合。感谢分享。 (2认同)