>直接引用工具自带的库文件
通过指令:
.1查看能直接调用的库文件路径
#可以查到工具默认库文件路径,一般包括回显中的路径以及回显中路径的父路径。
info library
#D:/Script.NET/V2/Interps/Tcl/Lib/tcl8.
1.2、在上一步的路径下找找没有自己需要的库,通过指令:
package require xxx 引用,一般直接写tcl文件名即可,如果不对,查看pkgIndex.tcl里package ifneeded 后边的名称。 >引用别人的库文件或者添加自己的库文件 下边的工具指Script.NET 、将别人写好的库文件拷贝到编译器所在文件路径下。
路径:D:\Script.NET\V2\interps\Tcl\lib下,脚本中添加"package require xxx"后,就可调用了。 、创建自己的library库 注意:一般不要使用工具自带的控制台生成pkg_mkIndex,问题较多。
可以用ActiveTcl(下边的操作,尽量使用ActiveTcl安装后的tclsh.exe交互界面执行命令)
2.1、在工具安装路径(如D:\Script.NET\V2\lib),lib库路径下创建自己的lib(创建一个文件夹),如:mylib1.
2.2、将自己需要用到的所有tcl文件都放到这个文件夹下(tcl文件中一定要包含:package provide fun 1.0),provide提供的名称和版本。
2.3、执行工具自带的控制台(工具-->控制台),执行pkg_mkIndex -direct "D:\\Script.NET\\V2\\lib\\mylib1.0" *.tcl (tclsh.exe执行时可以在脚本中添加puts xxx,当第一次调用时,会显示puts后的内容,使用工具自带的控制台会添加puts会导致生成失败,但不会提示和报错)
说明:pkg_mkIndex [-direct--使用前直接加载当前路径下的文件,不管用到与否|-lazy -verbose--动态加载,使用时才加载,否则,不加载]
.4生成成功后,会有类似如下显示:
package ifneeded my_fun 1.0 [list source [file join $dir fun.tcl]]
package ifneeded my_namespace 1.0 [list source [file join $dir my_namespace.tcl]]
说明:动态和静态不一样,但是必有引用的文件,不可能全是注释内容
注意:文件中可以有多个方法,但是不能包含puts xxx,否则pkg_mkIndex生成的结果会有问题。
说明:目前测试,包含变量,方法,namespace的脚本都可以被package require xxx 后调用。 、添加自己的library库路径 工具有一个公共变量,执行代码时,可以直接使用
auto_path,使用:
3.1、显示默认自动可以引用的路径
#show the library of path which can be using directly.(Eg:package require xxx)
puts $auto_path
3.1、在默认自动可以引用的路径中,添加自己的路径,注意用applend和/。
#add path to auto_path.Intro:the path must be splited by "/",otherwise,it can not work.
lappend auto_path "D:/Tcl/lib"
puts $auto_path 其他说明:
、非TCL工具里的指令,只能在交互界面里执行(如:dir、ping等系统自带的指令),如果不希望交互里能执行非工具里的指令,可以定义变量set auto_noexec (可以设置成任何值),此时下发dir会报错,不识别。恢复:unset auto_noexec,之后输入dir就可以看到dir以及它对应的回显。

TCL:使用、添加库文件的更多相关文章

  1. 如何在Qt Creator中添加库文件和头文件目录

    在使用QtCreator开发图像处理程序的时候想加入Opencv库来处理图形,添加头文件,需要编辑工程文件夹下的.pro文件在文件中添加以下内容,即可包含头文件的文件夹: INCLUDEPATH += ...

  2. Qt添加库文件和头文件目录(QCreator)

    在使用QtCreator开发图像处理程序的时候想加入Opencv库来处理图形,添加头文件,需要编辑工程文件夹下的.pro文件在文件中添加以下内容,即可包含头文件的文件夹: INCLUDEPATH += ...

  3. win7下添加库文件出现“file is not regcognized”问题

    最近几天需要画电路图,所以安装了protel se99,安装后在添加库文件的时候出现“file is not regcognized”的问题 百度查了一下,说win7基本上都会出现这个问题. 实际上, ...

  4. Cocos2d-x 开发 v3.2 建立新项目并添加库文件

    一.添加其它类库     3.0以上的设计耦合性强,项目中模块常以库的形式存在,需常添加链接库.在3.0中经常用到CocoStudio 编辑器的资源数据,所以需要添加CocoStudio 库. 1.1 ...

  5. VC++ 6.0中添加库文件和头文件

    附加头文件包含 VC6.0中: VC6.0默认include包含路径:Tools>Options>Directories>Include files. 对于特定项目的头文件包含,在& ...

  6. VC6.0中添加库文件和头文件

    附加头文件包含 VC6.0中: VC6.0默认include包含路径:Tools>Options>Directories>Include files. 对于特定项目的头文件包含,在“ ...

  7. VC 6.0中添加库文件和头文件 【转】

    本文转载自:http://blog.sina.com.cn/s/blog_9d3971af0102wxjq.html 加头文件包含 VC6.0中: VC6.0默认include包含路径:Tools&g ...

  8. visual studio 添加库文件

    我在visual studio中使用OpenGL时需要添加额外的库 一 首先下载库文件,里面将会有一些.h文件和.lib文件,打开visual studio安装目录下打开: D:\program\VS ...

  9. Xcode添加库文件framework (转)

    首先需要了解一下iOS中静态库和动态库.framework的概念 静态库与动态库的区别 首先来看什么是库,库(Library)说白了就是一段编译好的二进制代码,加上头文件就可以供别人使用. 什么时候我 ...

随机推荐

  1. 阿里巴巴Java招聘

    大家好: 我是阿里巴巴B2B的应用架构师,现在大量招聘Java工程师,对自己技术有信心的兄弟姐妹,请联系我吧. 版权声明:本文为博主原创文章,未经博主允许不得转载.

  2. SQL语句中=null和is null

    平时经常会遇到这两种写法:IS NOT NULL与!=NULL.也经常会遇到数据库有符合条件!=NULL的数据,但是返回为空集合.实际上,是由于对二者使用区别理解不透彻. 默认情况下,推荐使用 IS ...

  3. XML中特殊字符转义

    /// <summary> /// 特殊字符转义 /// </summary> /// <param name="xml"></param ...

  4. asp.net 页面如何将Eval中的时间显示为“yyyy-MM-dd ” 格式

    <table> <tr>    <td style="width:273px;color:#105db5;" valign="top&quo ...

  5. 用SQLMAP工具进行SQL注入

    1.检查注入点 [注入点需要自己寻找,可以利用一些工具,例如:Acunetix Web Vulnerability scanner (WVS),AppScan等]u表示URL. sqlmap   -  ...

  6. 关于python3.X 报"import urllib.request ImportError: No module named request"错误,解决办法

    #encoding:UTF-8 import urllib.request url = "http://www.baidu.com" data = urllib.request.u ...

  7. 未添加document.ready产生的BUG

    今天在框架里使用superslide插件时,在javascript部分 <script type="text/javascript"> jQuery(".yj ...

  8. android 获取系统联系人 完全解析

    一.代码 1.ContactsEngine.java import java.util.ArrayList; import java.util.HashMap; import java.util.Li ...

  9. 读 《.Net 之美》解析.Net Remoting (应用程序域)-- Part.1

    读 <.Net 之美>解析.Net Remoting (应用程序域)-Part1 理解 .Net Remoting 前言: 看张子阳老师的文章,总是给自己很大的信心,这个专题基本上以张老师 ...

  10. Linux启动与登陆环境

    linux启动流程 参考:http://www.ruanyifeng.com/blog/2013/08/linux_boot_process.html 加载内核,首先读入/boot 目录下的内核文件. ...