【发布时间】:2018-04-06 12:41:52
【问题描述】:
我正在使用与自制 tclsh(Synopsys EDA) 接口的商业工具。
在他们的版本中,他们删除了load 命令。因此我不能使用第三方库(在我的例子中是 Graphviz 库)。
我想知道是否有另一种方法可以导入二进制文件(.so 文件)
【问题讨论】:
-
“删除了
load命令”是什么意思?他们是从解释器中删除 (rename ::load "") 还是在配置了--disable-loadautoconf 标志的 Tcl 库上构建? -
“Graphviz 库”是什么意思? Tcldot?所以,你想做
package req tcldot? -
我不知道,但我猜他们在构建 shell 时禁用了它。我天真地做了
rename ::load load,它告诉我命令::load不存在 -
是的,这是我想要使用的 Tcldot,但是当我使用
package require Tcldot时,它会为关联的pkgIndex.tcl中使用的load引发未知命令错误。我们可以在其中找到ifneeded Tcldot " load [file join $dir tcldot.so] Tcldot" -
2) 你能跑吗:
interp create slave; slave eval {::load}?
标签: tcl shared-libraries tclsh