我已经安装了ActiveTcl8.6.1.1.297588-macosx10.5-i386-x86_64-threaded
在我的 OS X 10.9.1 上。但是,当我通过运行启动 IDLE 时idle3
从终端,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.
为什么 IDLE 无法识别我安装的较新 ActiveTcl 版本?我该如何纠正这个问题?
编辑:更多细节。
$ 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
根据“Python 如何选择要使用的 Tk 库”部分“在 Mac OS X 上使用 Tcl/Tk 进行 IDLE 和 tinter” https://www.python.org/download/mac/tcltk/python 官方网站上的页面,
从该网站下载的 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 框架。
所以看来
- 当前 OS X 的 python 安装无法识别最新的 ActiveTcl 版本(即 8.6)。
- python 使用的 Tcl/Tk 版本是在 python 安装过程中硬连线的,以后无法更改。
从这些观察中,解决方案很清楚:
- 安装最新的 8.5 ActiveTcl 版本。
- 重新安装Python。
我已按照这些步骤操作,现在一切似乎都正常。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)