我正在尝试在 Ubuntu 18.04.4 LTS 上运行 Tcl 程序Sguil服务器。
按照说明修改配置文件后,我运行了程序:
sudo ./sguild
我收到以下错误:
2020-05-10 15:13:29 Error: Failed to load package fileutil::magic::mimetype. fileutil::magic::mimetype is required for HTTPS/WSS.
我确认fileutil
可用:
echo "puts [package req fileutil]" | tclsh
1.16
这fileutil::magic::mimetype
是不可用的:
echo "puts [package req fileutil::magic::mimetype]" | tclsh
can't find package fileutil::magic::mimetype
我运行了以下内容,这表明它fileutil
包含在tcllib
:
dpkg -S tcl | grep fileutil
tcllib: /usr/share/doc/tcllib/html/fileutil.html
tcllib: /usr/share/tcltk/tcllib1.19/fileutil/pkgIndex.tcl
tcllib: /usr/share/tcltk/tcllib1.19/fileutil
tcllib: /usr/share/tcltk/tcllib1.19/fileutil/multi.tcl
tcllib: /usr/share/tcltk/tcllib1.19/fileutil/traverse.tcl
tcllib: /usr/share/tcltk/tcllib1.19/fileutil/fileutil.tcl
tcllib: /usr/share/tcltk/tcllib1.19/fileutil/multiop.tcl
tcllib: /usr/share/tcltk/tcllib1.19/fileutil/decode.tcl
tcllib: /usr/share/man/man3/fileutil.3tcl.gz
该tcllib
软件包已安装:
apt list tcllib
Listing... Done
tcllib/bionic,bionic,now 1.19-dfsg-2 all [installed]
任何想法为什么fileutil::magic::mimetype
无法加载,或者什么包提供它?
正如@steeldriver 指出的那样,该
fileutil::magic::mimetype
库不再是 Tcl 库的一部分,但它的功能现在可以在fileutil::magic::filetype
. 这个库在tcllib
包中可用。(这似乎是 Tcl 8.6 中的一个更改,该版本在 Ubuntu 18.04.4 LTS 的仿生存储库中可用。我检查了一台带有 Tcl 8.5 的 CentOS 7 机器,并且该
fileutil::magic::mimetype
库存在。)就我而言,我能够通过将 Sguil 应用程序代码中的引用从 更新为 来解决
fileutil::magic::mimetype
错误fileutil::magic::filetype
。