如何使用tcl/tk命令将.tcl文件转换为windows和linux的可执行文件?

如何使用tcl/tk命令将.tcl文件转换为windows和linux的可执行文件?,tcl,tcltk,Tcl,Tcltk,请通过可用软件的链接(具有可支持该功能的适当软件版本)和清晰的一对一步骤来回答此问题。 要转换为可执行文件的示例tcl/tk程序: #!/usr/bin/wish proc every {ms body} {eval $body; after $ms [info level 0]} proc drawhands w { $w delete hands set secSinceMidnight [expr {[clock sec]-[clock scan 00:00:00]}

请通过可用软件的链接(具有可支持该功能的适当软件版本)和清晰的一对一步骤来回答此问题。

要转换为可执行文件的示例tcl/tk程序:

#!/usr/bin/wish

proc every {ms body} {eval $body; after $ms [info level 0]}

proc drawhands w {
    $w delete hands
    set secSinceMidnight [expr {[clock sec]-[clock scan 00:00:00]}]
    foreach divisor {60 3600 43200} length {45 40 30} width {1 3 7} {
       set angle [expr {$secSinceMidnight * 6.283185 / $divisor}]
       set x [expr {50 + $length * sin($angle)}]
       set y [expr {50 - $length * cos($angle)}]
       $w create line 50 50 $x $y -width $width -tags hands
    }
}
proc toggle {w1 w2} {
    if [winfo ismapped $w2] {
        foreach {w2 w1} [list $w1 $w2] break ;# swap
    }
    pack forget $w1
    pack $w2
}
#-- Creating the analog clock:
canvas .analog -width 100 -height 100 -bg white
every 1000 {drawhands .analog}
pack .analog

#-- Creating the digital clock:
label .digital -textvar ::time -font {Courier 24}
every 1000 {set ::time [clock format [clock sec] -format %H:%M:%S]}

bind . <1> {toggle .analog .digital}
#/usr/bin/wish
proc every{ms body}{eval$body;在$ms[info level 0]之后]
过程拉手{
$w删除手
设置secsincemiddnight[expr{[clock sec]-[clock scan 00:00:00]]
foreach除数{60 3600 43200}长{45 40 30}宽{1 3 7}{
设置角度[expr{$secSinceMidnight*6.283185/$divisior}]
集合x[expr{50+$length*sin($angle)}]
集合y[expr{50-$length*cos($angle)}]
$w创建行50$x$y-宽度$width-标记手
}
}
进程切换{w1 w2}{
如果[winfo被封装为$w2]{
foreach{w2 w1}[list$w1$w2]break;#swap
}
打包忘记$w1
套餐$w2
}
#--创建模拟时钟:
帆布。模拟-宽度100-高度100-背景白色
每1000{drawhands.analog}
模拟包装
#--创建数字时钟:
label.digital-textvar::time-font{Courier 24}
每1000{集::时间[时钟格式[时钟秒]-格式%H:%M:%S]}
绑定{切换。模拟。数字}
适用于windows和linux:

  • 分别从以下站点下载
    freewrap673.zip
    freewrap673.tar.gz

  • 拔出

  • 对于
    windows64位系统,转到
    win64
    ;对于linux64位系统,转到
    linux64

  • 将.tcl文件复制到此文件夹中

  • 运行时使用:

    适用于windows的freewrap filename.tcl
    /freewrap filename.tcl
    linux版


  • 这个链接能回答你的问题吗?不,我已经试过了。也许你可以用你试过的不同东西和遇到问题的地方来编辑你的问题…Windows上的freewrap示例:我无法在Linux上测试…与你相同的链接(我想…):