安装最新的tcl/tk版本

安装最新的tcl/tk版本,tcl,Tcl,我正在尝试在MacOSX上安装tcl/tk 8.5.11。但是,它没有得到承认;旧版本8.5.7即将出现。 我的桌面上有一个单独的文件夹,我正在将文件解压缩到其中 我遵循Tcl网站上的说明(尽我所能) 我有: “%info patchlevel” 它给出: “8.5.7” 这是我不想要的。我想要这个新版本的原因是我需要它是无线程的。当前存在的任何内容都是线程化的。 有人能告诉我如何让新版本被认可吗?问题可能是,PATH上的第一个版本是旧版本。要强制使用新的路径,您应该更改PATH环境变量,或者在

我正在尝试在MacOSX上安装tcl/tk 8.5.11。但是,它没有得到承认;旧版本8.5.7即将出现。 我的桌面上有一个单独的文件夹,我正在将文件解压缩到其中

我遵循Tcl网站上的说明(尽我所能)

我有:
%info patchlevel

它给出:
8.5.7

这是我不想要的。我想要这个新版本的原因是我需要它是无线程的。当前存在的任何内容都是线程化的。
有人能告诉我如何让新版本被认可吗?

问题可能是,PATH上的第一个版本是旧版本。要强制使用新的路径,您应该更改PATH环境变量,或者在命令行上提供可执行文件的完整路径。使用OSX,最简单的方法是打开一个终端,将要使用的tclsh可执行文件的版本从Finder中的位置拖到终端窗口(直接粘贴路径)


但是,您应该知道,将来Tcl的所有版本都可能更广泛地使用线程(以便更好地利用现代多核硬件)。作为长期策略,最好调查(并修复)导致您需要无线程构建的问题。(使用在多个线程中实际不起作用的代码是合理的;Tcl不会意外地在代码中弹出它们。但是,在线程构建中根本不起作用的任何东西——即使只从单个线程接触过——都是一个问题。)

问题可能是路径上的Tlsh的第一个版本是旧版本。要强制使用新的路径,您应该更改PATH环境变量,或者在命令行上提供可执行文件的完整路径。使用OSX,最简单的方法是打开一个终端,将要使用的tclsh可执行文件的版本从Finder中的位置拖到终端窗口(直接粘贴路径)


但是,您应该知道,将来Tcl的所有版本都可能更广泛地使用线程(以便更好地利用现代多核硬件)。作为长期策略,最好调查(并修复)导致您需要无线程构建的问题。(使用在多个线程中实际上不起作用的代码是合理的;Tcl永远不会意外地在您的代码中使用它们。但是,在线程构建中根本不起作用的任何东西——即使只从单个线程接触过——都是一个问题。)

我认为您需要将/usr/local/bin/放在/usr/bin/之前

我已经在SnowLeopard中安装了ActiveTCLv8.5.11.x。例如,我可以直接调用此版本:

$ /usr/local/bin/tclsh
% info patchlevel
8.5.11

我认为您需要将/usr/local/bin/置于/usr/bin/之前

我已经在SnowLeopard中安装了ActiveTCLv8.5.11.x。例如,我可以直接调用此版本:

$ /usr/local/bin/tclsh
% info patchlevel
8.5.11

8.5.7可能是雪豹上的系统版本。您的问题可能是路径设置不正确。如何启动Tcl并输入“信息补丁级别”?8.5.7可能是雪豹上的系统版本。您的问题可能是路径设置不正确。如何启动Tcl,进入“信息修补级别”?感谢您@Donal Fellows的回复。我试试看。还有一个愚蠢的问题…Tcl可执行文件到底在哪里?Tcl在我下载时附带了一堆文件夹,我不确定哪个文件是可执行文件。@Beaugest:现在我不能告诉你;它不在标准位置,否则你已经找到了。考虑到您下载它已经有好几天了,您应该能够在终端中使用
locate tclsh
来识别候选对象。(这“几天”是因为它使用的数据库大约每天重建一次。)你也可以尝试Finder/Spotlight,但我发现这对这种搜索不太有用。谢谢@Donal Fellows。取得进展…我可以得到正确的版本,现在与信息后,你的建议。我没有试图运行一个程序,这是它给我的警告:
Tk版本不匹配:/usr/local/lib/tkConfig.sh来自运行Tk 8.5.11的8.5版本。我不确定这是否是一个大问题。在8.5中做了一些修改,使其在版本匹配方面更加挑剔,但如果它一经构建就可以正常工作,那也没什么大不了的。我感谢您的回复@Donal Fellows。我试试看。还有一个愚蠢的问题…Tcl可执行文件到底在哪里?Tcl在我下载时附带了一堆文件夹,我不确定哪个文件是可执行文件。@Beaugest:现在我不能告诉你;它不在标准位置,否则你已经找到了。考虑到您下载它已经有好几天了,您应该能够在终端中使用
locate tclsh
来识别候选对象。(这“几天”是因为它使用的数据库大约每天重建一次。)你也可以尝试Finder/Spotlight,但我发现这对这种搜索不太有用。谢谢@Donal Fellows。取得进展…我可以得到正确的版本,现在与信息后,你的建议。我没有试图运行一个程序,这是它给我的警告:
Tk版本不匹配:/usr/local/lib/tkConfig.sh来自运行Tk 8.5.11的8.5版本。我不确定这是否是一个大问题。在8.5中做了一些修改,使其在版本匹配方面更加挑剔,但如果它一经构建就可以正常工作,那也没什么大不了的。