TCL即使在同一文件夹中也不会加载软件包

问题描述 投票:0回答:1
包装文件:

package provide test 1.0

使用文件:

package require test 1.0
恢复:

$ tclsh test1.tcl can't find package test 1.0 while executing "package require test 1.0" (file "test1.tcl" line 1)
在Windows 10

上使用MingW64 MSYS2使用TCL 8.6.13

TCL中包装的两个关键部分,索引脚本和

package provide

(或其C API等效)。
package runtime-error tcl mingw msys2
1个回答
0
投票
package unknown

的内部运行,通常位于一个名为the的文件中,该文件位于带有包装实现的目录中(DLL,脚本文件等),它调用

pkgIndex.tcl
告诉TCL“如果您需要“如果需要package”的版本

package ifneeded

,请运行此代码以获取它”。这样做意味着您可以一次安装许多同一包装的版本。

使包装在解释器中工作的代码通常调用
x.y.z
abc
或两者兼而有之。在该过程中工作的某个地方的某个地方,
load
以相同的软件包名称和版本来调用。这标志着确定包裹存在和操作的点。 
source
命令
checks

,它具有的是

excActly the the的期望,并且cunderpularde concundeculared依赖性;使这两种都阻止了很多难以诊断的错误。

曾经是常见的做法,用于扫描调用并生成
package provide
脚本...但这总是容易出错和愚蠢。将这些脚本编写为软件包作者并不难,尤其是现在所有当前版本的TCL支持
package
命令。
    

最新问题
© www.soinside.com 2019 - 2025. All rights reserved.