即使我安装了较新的版本,IDLE警告旧的TCL版本

时间:2014-01-15 05:04:58

标签: macos tcl python-idle

我在OS X 10.9.1上安装了ActiveTcl8.6.1.1.297588-macosx10.5-i386-x86_64-threaded。但是,当我通过从终端运行idle3启动IDLE时,IDLE窗口中会显示以下警告:

Python 3.3.3 (v3.3.3:c3896275c0f6, Nov 16 2013, 23:39:35) 
[GCC 4.2.1 (Apple Inc. build 5666) (dot 3)] on darwin
Type "copyright", "credits" or "license()" for more information.
>>> WARNING: The version of Tcl/Tk (8.5.9) in use may be unstable.
Visit http://www.python.org/download/mac/tcltk/ for current information.

为什么我安装的较新的ActiveTcl版本无法被IDLE识别?我怎么能纠正这个?

编辑:进一步的细节。

$ echo $PATH
/Library/Frameworks/Python.framework/Versions/3.3/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin

$ which tclsh
/usr/bin/tclsh

$ ls -l /usr/bin/tclsh*
lrwxr-xr-x  1 root  wheel  17 Jan 15 10:45 /usr/bin/tclsh -> /usr/bin/tclsh8.6
lrwxr-xr-x  1 root  wheel  67 Oct 25 19:59 /usr/bin/tclsh8.4 -> ../../System/Library/Frameworks/Tcl.framework/Versions/8.4/tclsh8.4
lrwxr-xr-x  1 root  wheel  67 Oct 25 19:59 /usr/bin/tclsh8.5 -> ../../System/Library/Frameworks/Tcl.framework/Versions/8.5/tclsh8.5
lrwxr-xr-x  1 root  wheel  23 Jan 15 10:45 /usr/bin/tclsh8.6 -> /usr/local/bin/tclsh8.6

$ ls -l /usr/local/bin/tclsh*
lrwxr-xr-x  1 root  admin      8 Jan 15 10:40 /usr/local/bin/tclsh -> tclsh8.6
-rwxr-xr-x  1 root  admin  41716 Oct 27 04:45 /usr/local/bin/tclsh8.6

8 个答案:

答案 0 :(得分:12)

根据官方python网站上"IDLE and tinter with Tcl/Tk on Mac OS X"页面的“Python如何选择使用哪个Tk库”部分,

  

从此网站下载的Python for Mac OS X安装程序在运行时动态链接到Tcl / Tk Mac OS X框架。 Tcl / Tk主要版本是在创建安装程序时确定的,无法覆盖。 Python 3.4.x,3.3.x,3.2.x和2.7.x的Python 64位/ 32位Mac OS X安装程序动态链接到Tcl / Tk 8.5框架。

所以似乎

  1. OS X的当前python安装无法识别最新的ActiveTcl版本(即8.6)。
  2. python使用的Tcl / Tk版本在python安装过程中是硬连线的,以后不能更改。
  3. 根据这些观察,解决方案很明确:

    1. 安装最新的8.5 ActiveTcl版本。
    2. 重新安装python。
    3. 我遵循了这些步骤,现在一切似乎都有效。

答案 1 :(得分:10)

我有OS X 10.10.5。

  1. 我安装了Python 3.4.3。
  2. Ran IDLE,得到警告,"正在使用的Tcl / Tk(8.5.9)版本可能不稳定。"
  3. 去[活动状态] [1]并下载建议的,"下载ActiveTcl 8.6.4 for Mac OS X(10.5 +,x86_64 / x86)"。
  4. Ran安装程序" ActiveTcl8.6.4.1.299124-macosx10.5-i386-x86_64-threaded.dmg"
  5. 重新安装:python-3.4.3-macosx10.6.pkg
  6. Ran IDLE - 仍然是相同的消息,"正在使用的Tcl / Tk(8.5.9)版本可能不稳定。"。
  7. 已检查 - 是,8.6.4已存在。
  8. 回到Active State并获得先前版本:" ActiveTcl8.5.18.0.298892-macosx10.5-i386-x86_64-threaded.dmg"
  9. 重新安装:python-3.4.3-macosx10.6.pkg
  10. Ran IDLE - 没有警告。

答案 2 :(得分:8)

这对我有用

警告:正在使用的Tcl / Tk(8.5.9)版本可能不稳定。

brew remove python3

brew install homebrew/dupes/tcl-tk

brew install python3 --with-tcl-tk

brew linkapps python3

答案 3 :(得分:1)

尝试下载Python正在寻找的版本:8.5.X。版本8.6.X无法识别。

答案 4 :(得分:1)

我遇到了同样的问题。您可以通过下载Active Tcl 8.5.17 version而非最新版本来解决此问题。

答案 5 :(得分:0)

在安装了python 2.7.9 / 3.4.1的OSX 10.10上启动IDLE之后我遇到了同样的问题(并且看到与原始海报相同的$ PATH变量信息)。

我去了python support page

我引用了他们的“当前建议摘要”图表来确定必要的Tcl / Tk;它链接到可下载的.DMG,我安装了它,然后IDLE在没有警告的情况下运行。

我没有重新安装python。

答案 6 :(得分:0)

这似乎在High Sierra上被打破了。执行以下步骤后,在发出警告说在两个地方安装了FIFinderSyncExtensionHost后,打开“无效或过早释放的自动释放池”文件时,idle3崩溃。

答案 7 :(得分:0)

我如何解决问题:

首先我们需要安装ActiveTcl8.5.18.0

  1. 下载:https://www.activestate.com/activetcl/downloads
  2. enter image description here

    1. 运行您下载的文件。

    2. CTRL + CLICK (Mac和Windows)打开上下文菜单。如果您收到错误无法打开,因为它来自身份不明的开发者 - 您需要 CTRL + CLICK 不要双击。

    3. enter image description here

      1. 点击上下文菜单中的打开
      2. 点击弹出式对话框中的打开(左侧,非蓝色按钮)
      3. 安装。
      4. 如果这不能解决问题,我们需要卸载python。 This article真的帮了我。