即使文件在 auto_path 目录中,tcl 也找不到包
tcl can't find package even though file is in auto_path directory
关于 windows 7,tcl 8.6.4。
我的repo.tcl和region.tcl文件都在c:\sites\vive
repo 是一个包:
package provide repo 1.0
namespace eval ::repo {}
namespace eval ::repo::create{}
proc ::repo::create {} {...} ...
region.tcl 想要访问 repo.tcl 中的过程,所以它看起来像这样:
#source ./repo.tcl <---------old method, want to replace with package require
lappend auto_path [pwd] ;#<--puts c:\sites\vive in the autopath so package can find it.
package require repo 1.0 ;#<--tried this with out version number as well. same result.
::repo::create
...
我总是遇到这个错误:
can't find package repo 1.0
这两个网站都建议我使用 lappend auto_path
https://unix.stackexchange.com/questions/44992/package-require-xxxx-tcl
Can't find package BLT
我做错了什么?谢谢!
您必须使用 pkg_mkIndex
生成 pkgIndex.tcl
文件
% pkg_mkIndex -verbose [pwd] repo.tcl
successful sourcing of repo.tcl
packages provided were {repo 1.0}
processed repo.tcl
% lappend auto_path [pwd]
C:/Dinesh/Backup/cmder/vendor/msysgit/lib/tcl8.5 C:/Dinesh/Backup/cmder/vendor/msysgit/lib C:/Users/dsivaji/Desktop/delete
%
%
%
% package require repo
1.0
查看手册页 pkg_mkIndex 了解更多信息。
关于 windows 7,tcl 8.6.4。
我的repo.tcl和region.tcl文件都在c:\sites\vive
repo 是一个包:
package provide repo 1.0
namespace eval ::repo {}
namespace eval ::repo::create{}
proc ::repo::create {} {...} ...
region.tcl 想要访问 repo.tcl 中的过程,所以它看起来像这样:
#source ./repo.tcl <---------old method, want to replace with package require
lappend auto_path [pwd] ;#<--puts c:\sites\vive in the autopath so package can find it.
package require repo 1.0 ;#<--tried this with out version number as well. same result.
::repo::create
...
我总是遇到这个错误:
can't find package repo 1.0
这两个网站都建议我使用 lappend auto_path https://unix.stackexchange.com/questions/44992/package-require-xxxx-tcl Can't find package BLT
我做错了什么?谢谢!
您必须使用 pkg_mkIndex
pkgIndex.tcl
文件
% pkg_mkIndex -verbose [pwd] repo.tcl
successful sourcing of repo.tcl
packages provided were {repo 1.0}
processed repo.tcl
% lappend auto_path [pwd]
C:/Dinesh/Backup/cmder/vendor/msysgit/lib/tcl8.5 C:/Dinesh/Backup/cmder/vendor/msysgit/lib C:/Users/dsivaji/Desktop/delete
%
%
%
% package require repo
1.0
查看手册页 pkg_mkIndex 了解更多信息。