访问TCL库

时间:2013-01-17 16:06:13

标签: tcl tclsh

我是TCL的新手,正在努力寻找其他模块。 SOURCE命令帮助我包含了我在TCL程序中编写的其他代码。但是,我认为我在访问代码库时遇到了问题。

例如,当我引用数学函数时,找不到它。我认为在搜索通过tchsh85调用的程序时,我必须要做一些事情来包括数学库在我的计算机上的位置。

invalid command name "::math::statistics::mv-ols"

我的电脑上没有这些目录:

info library= C:/Tcl/lib/tcl8.5
auto_path= C:/Tcl/lib/tcl8.5 C:/Tcl/lib c:/tcl/lib/teapot/package/win32-x86_64/lib               c:/tcl/lib/teapot/package/tcl/lib
tcl library= C:/Tcl/lib/tcl8.5
auto_index= source C:/Tcl/lib/tcl8.5/word.tcl
auto_index= source C:/Tcl/lib/tcl8.5/tm.tcl
auto_index= source C:/Tcl/lib/tcl8.5/tm.tcl
auto_index= source C:/Tcl/lib/tcl8.5/safe.tcl
auto_index= source C:/Tcl/lib/tcl8.5/parray.tcl
auto_index= source C:/Tcl/lib/tcl8.5/history.tcl
auto_index= source C:/Tcl/lib/tcl8.5/safe.tcl
auto_index= source C:/Tcl/lib/tcl8.5/safe.tcl
auto_index= source C:/Tcl/lib/tcl8.5/safe.tcl
auto_index= source C:/Tcl/lib/tcl8.5/safe.tcl
auto_index= source C:/Tcl/lib/tcl8.5/safe.tcl
auto_index= source C:/Tcl/lib/tcl8.5/history.tcl
auto_index= source C:/Tcl/lib/tcl8.5/package.tcl
auto_index= source C:/Tcl/lib/tcl8.5/safe.tcl
auto_index= source C:/Tcl/lib/tcl8.5/safe.tcl
auto_index= source C:/Tcl/lib/tcl8.5/history.tcl
auto_index= source C:/Tcl/lib/tcl8.5/safe.tcl
auto_index= source C:/Tcl/lib/tcl8.5/safe.tcl
auto_index= source C:/Tcl/lib/tcl8.5/word.tcl
auto_index= source C:/Tcl/lib/tcl8.5/safe.tcl
auto_index= source C:/Tcl/lib/tcl8.5/word.tcl
auto_index= source C:/Tcl/lib/tcl8.5/package.tcl
auto_index= source C:/Tcl/lib/tcl8.5/tm.tcl
auto_index= source C:/Tcl/lib/tcl8.5/auto.tcl
auto_index= source C:/Tcl/lib/tcl8.5/auto.tcl
auto_index= source C:/Tcl/lib/tcl8.5/auto.tcl
auto_index= source C:/Tcl/lib/tcl8.5/auto.tcl
auto_index= source C:/Tcl/lib/tcl8.5/safe.tcl
auto_index= source C:/Tcl/lib/tcl8.5/auto.tcl
auto_index= source C:/Tcl/lib/tcl8.5/history.tcl
auto_index= source C:/Tcl/lib/tcl8.5/auto.tcl
auto_index= source C:/Tcl/lib/tcl8.5/safe.tcl
auto_index= source C:/Tcl/lib/tcl8.5/history.tcl
auto_index= source C:/Tcl/lib/tcl8.5/package.tcl
auto_index= source C:/Tcl/lib/tcl8.5/safe.tcl
auto_index= source C:/Tcl/lib/tcl8.5/safe.tcl
auto_index= source C:/Tcl/lib/tcl8.5/safe.tcl
auto_index= source C:/Tcl/lib/tcl8.5/safe.tcl
auto_index= source C:/Tcl/lib/tcl8.5/auto.tcl
auto_index= source C:/Tcl/lib/tcl8.5/safe.tcl
auto_index= source C:/Tcl/lib/tcl8.5/safe.tcl
auto_index= source C:/Tcl/lib/tcl8.5/safe.tcl
auto_index= source C:/Tcl/lib/tcl8.5/auto.tcl
auto_index= source C:/Tcl/lib/tcl8.5/safe.tcl
auto_index= source C:/Tcl/lib/tcl8.5/safe.tcl
auto_index= source C:/Tcl/lib/tcl8.5/history.tcl
auto_index= source C:/Tcl/lib/tcl8.5/safe.tcl
auto_index= source C:/Tcl/lib/tcl8.5/safe.tcl
auto_index= source C:/Tcl/lib/tcl8.5/safe.tcl
auto_index= source C:/Tcl/lib/tcl8.5/safe.tcl
auto_index= source C:/Tcl/lib/tcl8.5/tm.tcl
auto_index= source C:/Tcl/lib/tcl8.5/safe.tcl
auto_index= source C:/Tcl/lib/tcl8.5/safe.tcl
auto_index= source C:/Tcl/lib/tcl8.5/safe.tcl
auto_index= source C:/Tcl/lib/tcl8.5/auto.tcl
auto_index= source C:/Tcl/lib/tcl8.5/safe.tcl
auto_index= source C:/Tcl/lib/tcl8.5/safe.tcl
auto_index= source C:/Tcl/lib/tcl8.5/safe.tcl
auto_index= source C:/Tcl/lib/tcl8.5/auto.tcl
auto_index= source C:/Tcl/lib/tcl8.5/safe.tcl
auto_index= source C:/Tcl/lib/tcl8.5/word.tcl
auto_index= source C:/Tcl/lib/tcl8.5/safe.tcl
auto_index= source C:/Tcl/lib/tcl8.5/package.tcl
auto_index= source C:/Tcl/lib/tcl8.5/auto.tcl
auto_index= source C:/Tcl/lib/tcl8.5/history.tcl
auto_index= source C:/Tcl/lib/tcl8.5/package.tcl
auto_index= source C:/Tcl/lib/tcl8.5/safe.tcl
auto_index= source C:/Tcl/lib/tcl8.5/word.tcl
auto_index= source C:/Tcl/lib/tcl8.5/history.tcl
auto_index= source C:/Tcl/lib/tcl8.5/safe.tcl
auto_index= source C:/Tcl/lib/tcl8.5/safe.tcl
auto_index= source C:/Tcl/lib/tcl8.5/auto.tcl
auto_index= source C:/Tcl/lib/tcl8.5/history.tcl
auto_index= source C:/Tcl/lib/tcl8.5/safe.tcl
auto_index= source C:/Tcl/lib/tcl8.5/safe.tcl
auto_index= source C:/Tcl/lib/tcl8.5/tm.tcl
auto_index= source C:/Tcl/lib/tcl8.5/tm.tcl
auto_index= source C:/Tcl/lib/tcl8.5/safe.tcl

2 个答案:

答案 0 :(得分:2)

您想要成功的命令是:

package require math::statistics

您不应该通过其他方式(例如直接source)获取代码,因为您随后绑定到包的实现而不是规范。该软件包是Tcllib集合的一部分,您应该将其安装在计算机上的某个位置。

如果你正在使用ActiveTcl,你想做:

teacup update

这将安装许多包并设置您需要的所有路径。

如果您使用的是自己的版本,则必须自行下载Tcllib的副本并按照其安装说明进行操作。我不记得它默认安装在Window上的位置,但是让我们说它是C:\Tcl\lib\Tcllib(与子目录中的实际包):在这种情况下,你可以通过执行将包提供给Tcl :

lappend auto_path C:/Tcl/lib/Tcllib

如果您正在制作可再发行的可执行文件,那么还有其他技术。在那种情况下提出另一个问题。

答案 1 :(得分:0)

:: math :: statistics是TCLlib的一部分。要检查是否已安装,请键入

package require tcllib

如果已安装,它会告诉您版本号。如果未安装,您可以使用Teacup为您安装。