Tcl/Tkアプリケーション、redet、およびUbuntu 18.04に問題があります。すべての依存関係が取り込まれるように、シナプスを使用して17.04にインストールしました。17.10でも機能し続けました。 18.04にアップグレードした後、次のエラーメッセージで起動に失敗しました。
Error in startup script: can't find package Itcl 3.4
while executing
"package require Itcl 3.4"
(file "/usr/share/tcltk/iwidgets4.1.0/iwidgets.tcl" line 18)
invoked from within
"source /usr/share/tcltk/iwidgets4.1.0/iwidgets.tcl"
("package ifneeded Iwidgets 4.1.0" script)
invoked from within
"package require Iwidgets"
(file "/usr/bin/redet" line 27)
すべてが変更されていなかったので、すべての依存関係が満たされたと思うので、シナプスを使用して18.04がインストールされている別のマシンにredetをインストールしようとしました。すべての同じ依存関係が取り込まれましたが、redetを実行しようとしたときに同じエラーメッセージが表示されました。グーグルでは、この問題は過去にTcl/Tkに関連するいくつかのメッセージボードに登場しましたが、私が理解できる明白な意見はありません。 AskUbuntuで見つけることができる唯一の質問(Q:fvツールのインストールの問題)には、何の回答もありませんでした。
Ubuntu 18.04 LTSのクリーンインストールで、redet
パッケージを1つだけインストールした場合、この問題を確認できます。
$ Sudo apt-get install redet
$ redet
Error in startup script: can't find package Itcl 3.4
while executing
"package require Itcl 3.4"
(file "/usr/share/tcltk/iwidgets4.1.0/iwidgets.tcl" line 18)
invoked from within
"source /usr/share/tcltk/iwidgets4.1.0/iwidgets.tcl"
("package ifneeded Iwidgets 4.1.0" script)
invoked from within
"package require Iwidgets"
(file "/usr/bin/redet" line 27)
$ dpkg -S /usr/share/tcltk/iwidgets4.1.0/iwidgets.tcl
iwidgets4: /usr/share/tcltk/iwidgets4.1.0/iwidgets.tcl
$ dpkg -S /usr/bin/redet
redet: /usr/bin/redet
$ echo "puts [package req Itcl]" | tclsh
3.4
そこで、私は bug 176897 をlaunchpadに報告しました。
迅速で汚い回避策は、Xenialからパッケージをダウンロードし、インストールしてピン留めすることです。
cd ~/Downloads
wget http://mirrors.kernel.org/ubuntu/pool/universe/i/itcl3/itcl3_3.4.3-1_AMD64.deb
Sudo apt-get install ./itcl3_3.4.3-1_AMD64.deb
cat <<EOF | Sudo tee /etc/apt/preferences.d/pin-itcl
Package: itcl3
Pin: version 3.4.3-1
Pin-Priority: 1337
EOF
これらのアクションredet
が正常に起動した後: