freewrap——将tcl/tk脚本转变为可执行文件

FreeWrap可以把TCL/TK的脚本和二进制文件打包成应用程序,FreeWrap将所有的文件组合成一个单独的可执行文件。

FreeWrap的原理是把脚本和tcl/tk解释器和库文件都打包在一个文件当中,做成一个可执行程序。生成的可执行文件实际上是一个压缩包,里面包含有需要使用的所有内容。不同的版本对应不同的tcl/tk版本,由于原始的tcl/tk版本只包括一些基本的库,所以如果需要使用更多的库,需要额外添加到文件中,还需要注意添加的方法和调用的顺序,如果是二进制的库就更麻烦了,需要额外的添加一段脚本。

FreeWrap的可执行程序本身就是一个shell,如果修改了可执行程序的名字,在windows下把freeWrap修改为shell,再运行则是一个tcl/tk的shell。

FreeWrap使用非常方便,就是一条命令,语法参考如下。

语法:freewrap dir/test.tcl [-debug] [-f FileLoadList] [-forcewrap] [-i ICOfile] [-o OutFile][-p] [-w WrapStub] File1 ... FileN

参数:

dir/test.tcl      TCL/TK脚本主文件目录

File1 ... FileN   需要打包在可执行程序里面的文件,用空格间隔

-debug            在打包的时候打开一个可以查看调试信息的窗口

-f                需要打包的在命令后面的文件名详单

-forcewrap        当freeWrap应用程序名被修改后,强制freeWrap程序以打包程序来运行

-i                指定生成的可执行应用程序的图标

-o                指定生成的可执行应用程序的名称

-p                创建一个freeWrap格式的程序包而不是创建一个可执行程序

-w                生成跨平台的可执行文件

参数详解:

dir/test.tcl

TCL/TK脚本主文件目录,命令紧接着的默认为主脚本,其它的文件都为额外添加的文件。

File1 ... FileN

可以是任意的文件,但是要注意在生成的可执行程序包中的访问方式。比如你在命令中添加的file路径为C:/myfile/lib.tcl,那么在在打包程序中的目录结构是如下:

/myfile/lib.tcl

test.tcl

所以在添加库文件时要十分小心,要保证在脚本中调用的文件为source /myfile/lib.tcl而不是source lib.tcl。

-f

可以罗列需要打包的文件路径名到一个txt文件当中,运行命令后自动添加,避免命令过长。比如有3个文件C:/lib1.tcl、C:/lib2.tcl和D:/lib3.tcl,那么就可以在一个txt文件中写入上面的全路径,注意一个文件路径名占用一行。在调用的时候就可以正常添加所需的文件了。

-forcewrap

简单点说就是默认的应用程序为freewrap,如果由于需要程序名称修改成了shell,那么就可以使用 freewrap dir/test.tcl -forcewrap来打包一个程序,如果没有-forcewrap则是调用一个shell。

-i

使用-i选项去指定生成的可执行程序使用的图标。比如freewrap test.tcl -i test.ico,ico文件需要满足一下三种条件之一:1、16*16 16位色 2、32*32 16位色 3、32*32 2位色,如果是其他ico文件格式,在生成可执行文件时还是会采用默认的图标。

-o

指定生成的可执行应用程序的名称,比如freewrap test.tcl -o my.exe,生成的可执行程序就是my.exe而不是test.exe。

-w

生成跨平台的可执行文件,生成的时候需要有目标平台的freewarp,举例如下:

在windows下生成可以在linux下运行的打包应用程序:freewrap test.tcl -w freewrap

在linux下生成可以在windows下运行的打包应用程序:freewrap test.tcl -w freewrap.exe

如果需要freewrap,可以在http://sourceforge.net/中找到,目前的最新版本为6.4,支持tcl/tk8.5.0

时间: 2024-12-19 10:03:59

freewrap——将tcl/tk脚本转变为可执行文件的相关文章

Tcl/Tk学习

最近确定研究生方向为桥梁抗震,问了下师兄们,他们说课题组里常用的软件为OpenSEES和Abaqus.Abaqus之前有点接触,也做过一些小例子,和python的联系挺紧密的.但是OpenSEES只是听说过,具体也不知道是干什么的,于是就想开始倒腾OpenSEES.一搜索才发现OpenSEES是美国伯克利大学开发的一款有限元计算软件,最近几年开始引起了国内的重视.OpenSEES是open system for earthquake engineering simulation 的缩写,主要是用

pgtksh -- PostgreSQL Tcl/Tk shell 客户端

SYNOPSIS pgtksh [filename [argument...]] DESCRIPTION 描述 pgtksh 是一个带有 PostgreSQL 数据库访问函数扩展的 Tcl/Tk shell 接口.(实际上,它是装载了 libpgtcl 的wish.) 和普通的 Tcl/Tk shell wish 类似,命令行的第一个参数是一个脚本文件, 任何剩余的参数都传递给该脚本.特殊的选项可以由 X Window 系统库来处理. 如果没有命名脚本的名字,那么该 shell 是交互的. 一个

py脚本打包exe可执行文件

python3以上版本打包exe需要扩展软件:cx_freeze 下载地址:http://cx-freeze.sourceforge.net/ 1)安装后在\Python32\Scripts\cxfreeze.bat和\Python32\Scripts\cxfreeze-quickstart.bat文件中更改python实际路径,如: C:\Python32\python.exe C:\Python32\Scripts\cxfreeze %*改为D:\Python32\python.exe D:

tcl/tk的安装

以下是下安装tcl/tk的安装步骤:step1 下载和安装Tcl/Tk:Tcl/Tk是跨平台的语言,多个系统下都可以使用.FOR LINUXstep1: 下载tcl和tk的安装文件http://www.tcl.tk/software/tcltk/download.html step2:安装tcl tar -zvxf tcl8.4.4.tar.gzcd tcl8.4..4/cd unix./configuremakemake install 此时键入命令tclsh,就可以使用tcl了 step3

把别人的Tcl/Tk代码加入到Go语言里15 游戏8 翻牌游戏

这次文章主要引用了网上的这篇教学http://www.cwflynt.com/TclForTeens/ 步骤a 下载第17课里提到的扑克图像包 http://www.cwflynt.com/TclForTeens/cards.zip 解压缩cards.zip内所有文件到c:\cards\目录下 [你可以放在桌面的cards目录里,随意] 步骤b 跳到第20课http://www.cwflynt.com/TclForTeens/lsn20.html 找到最后一段框起来的源代码,它的上一句是"And

把别人的Tcl/Tk代码加入到Go语言里6 无框窗体

package mainimport "github.com/nsf/gothic" const init_script = ` catch { destroy .clock errorswindow } set w [ toplevel .clock ] wm  withdraw  . wm  title  $::w  "clock" tk  appname  "clock" wm  overrideredirect  $::w  1 wm  

Tcl/Tk的安装(转)

Tcl/Tk的安装     以下是下安装tcl/tk的安装步骤: step1 下载和安装Tcl/Tk: Tcl/Tk是跨平台的语言,多个系统下都可以使用. FOR LINUX step1: 下载tcl和tk的安装文件 http://www.tcl.tk/software/tcltk/download.html step2:安装tcl tar -zvxf tcl8.4.4.tar.gz cd tcl8.4..4/ cd unix ./configure make make install 此时键入

TCL/TK 的安装

主页: http://www.tcl.tk http://www.tcl.tk/software/tcltk/download.html 解压缩源码包tarzxvf tcl8.6.1-src.tar.gztarzxvf tk8.6.1-src.tar.gz 2. 安装cd tcl8.6.1cd unix ./configure --prefix=/usr/tcl --enable-sharedmakemake install cd tk8.6.1cd unix./configure --pref

python INFO: Can't locate Tcl/Tk libs and/or headers

安装opencv的时候遇到这个错误: python INFO: Can't locate Tcl/Tk libs and/or headers 参考如下文章解决这个问题: http://www.verydemo.com/demo_c122_i23277.html 执行 yum install tcl-dev yum install tk-dev yum install tcl yum install tk python INFO: Can't locate Tcl/Tk libs and/or