【问题标题】:Updating tcl/tk version of Homebrew python3 on macOS在 macOS 上更新 tcl/tk 版本的 Homebrew python3
【发布时间】:2019-05-24 15:07:33
【问题描述】:

我的环境:

macOS 10.13 来自 Homebrew 的 python 3.7.1

我在/System/Library/Frameworks/Tcl.framework/Versions/8.5/ 下的股票 Tcl/TK 8.5 上有很多 Tcl/TK 怪癖,我想升级我的 Tcl/TK。

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

我的测试结果

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

【问题讨论】:

    标签: python tkinter tcltk


    【解决方案1】:

    这篇文章提供了一个简洁的方法:

    https://stackoverflow.com/a/60469203/10606936

    不需要使用 actviveTk 或 python.org python 安装。

    关键点是为安装提供正确的 ENV。

    【讨论】:

      【解决方案2】:

      在多次失败之后,我得出结论,让这项工作最简单的方法是完全忘记 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
      

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

      【讨论】:

      • 自制软件在安装软件包时决定删除选项真是太可惜了。猜猜是这个,放弃自制的python并在没有管理器的情况下安装,或者等到一个新的包与python和tcl/TK结合发布。感谢分享。
      • 另外值得注意的是tcl/TK的最新版本是8.6.9,可以通过homebrew安装。 ActiveSlate 尚未发布最新的二进制文件。所以在不使用自制软件时要考虑的另一件事。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2018-02-18
      • 2022-01-08
      • 1970-01-01
      • 1970-01-01
      • 2020-12-18
      • 1970-01-01
      • 2013-01-22
      相关资源
      最近更新 更多