2021/02/06(土) [n年前の日記]
#1 [prog][tcltk] Tcl/TkをWindows10にインストール
Windows10 x64 20H2上で、Tcl/Tk (ActiveTcl) をインストールしてみた。
_Enterprise-grade Tcl with ActiveTcl | ActiveState
ActiveState から、ActiveTcl8.5.18.0.298892-win32-ix86-threaded.exe を入手。今回は D:\Tcl\ にインストールした。
しかし、動作確認をしてみたら、Iwidgets が見つからないと言われてしまう…。teacup install --with-recommends Iwidgets と打ってもダメ。エラーが出る。
ActiveTcl-8.6.9.8609.2-MSWin32-x64-5ccbd9ac8.exe を入手して、D:\Tcl\ にインストールし直したところ、Iwidgets を使ったスクリプトも動いてくれた。
_Enterprise-grade Tcl with ActiveTcl | ActiveState
ActiveState から、ActiveTcl8.5.18.0.298892-win32-ix86-threaded.exe を入手。今回は D:\Tcl\ にインストールした。
しかし、動作確認をしてみたら、Iwidgets が見つからないと言われてしまう…。teacup install --with-recommends Iwidgets と打ってもダメ。エラーが出る。
ActiveTcl-8.6.9.8609.2-MSWin32-x64-5ccbd9ac8.exe を入手して、D:\Tcl\ にインストールし直したところ、Iwidgets を使ったスクリプトも動いてくれた。
◎ exe化を試してみた。 :
.tcl のexe化を試してみた。手順は、以前メモしたやり方を踏襲。
_mieki256's diary - Tcl/Tkのスクリプトをexe化
_Google Code Archive - Long-term storage for Google Code Project Hosting.
以下のファイルを入手してリネーム。
sdx.bat も作成。
_SDX under Windows
sdx.bat
hoge.tcl というスクリプトがあると仮定する。exe化の流れは以下。
hoge.tcl を hoge.kit (VFS,仮想ファイルシステム) にラッピング。
hoge.kit を逆ラッピングして hoge.vfs/ に展開。
hoge.vfs/ 以下を hoge.exe にパッケージング。つまりexe化する。
_mieki256's diary - Tcl/Tkのスクリプトをexe化
_Google Code Archive - Long-term storage for Google Code Project Hosting.
以下のファイルを入手してリネーム。
- sdx-20110317.kit -> sdx.kit
- tclkit-8.5.9-win32.upx.exe -> tclkit.exe
- tclkitsh-8.5.9-win32.upx.exe -> tclkitsh.exe
sdx.bat も作成。
_SDX under Windows
sdx.bat
@tclkitsh sdx.kit %1 %2 %3 %4 %5 %6 %7 %8 %9
hoge.tcl というスクリプトがあると仮定する。exe化の流れは以下。
hoge.tcl を hoge.kit (VFS,仮想ファイルシステム) にラッピング。
sdx.bat qwrap hoge.tcl
hoge.kit を逆ラッピングして hoge.vfs/ に展開。
sdx.bat unwrap hoge.kit
hoge.vfs/ 以下を hoge.exe にパッケージング。つまりexe化する。
sdx.bat wrap hoge.exe -runtime tclkit.exe
◎ MSYS2上でも動作確認。 :
MSYS2上でも、Tcl/Tk が動作するか確認してみた。関連パッケージは既にインストールされていた。pacman -Ss tcl と打てば、おそらく関連パッケージがリストアップされるのではないか、と。間違ってるかもしれんけど。
*NIX上ではどうやって動かすのかなと思ったけれど、各スクリプトの先頭に以下の1行を書いておけばいいらしい。
もしかすると、スクリプトの改行コードを LF にしておかないといけないのかもしれない。面倒な時は、dos2unix *.tcl を動かせば改行コードをLFに変換してくれる。pacman -S dos2unix でインストールできる。
*NIX上ではどうやって動かすのかなと思ったけれど、各スクリプトの先頭に以下の1行を書いておけばいいらしい。
#!/usr/bin/env wishwish が Tcl/Tk を動かすためのプログラムなのだろう…。/usr/bin/env wish で、PATHの中から wish を探し出してくれる。
もしかすると、スクリプトの改行コードを LF にしておかないといけないのかもしれない。面倒な時は、dos2unix *.tcl を動かせば改行コードをLFに変換してくれる。pacman -S dos2unix でインストールできる。
[ ツッコむ ]
以上です。