Re: Possible bug with tclkit on 64bit platforms
Vadtec <[email protected]> Wed, 05 Sep 2007 12:24:13 -0000
| Newsgroups | gmane.comp.lang.tcl.starkit |
|---|---|
| Message-ID | <[email protected]> |
On Sep 5, 2:17 am, Graham Cobb <[email protected]> wrote: > On Tuesday 04 September 2007 22:52, Vadtec wrote: > > > I have been using tclkit on my CentOS box. I downloaded tclkit-linux- > > x86_64 for my 64bit system. It works great, except for one problem. I > > put a copy of tclkit into /usr/bin so that it would be usable by the > > whole system. After some issues, and some prodding with strace and > > sdiff, along with some help from GPS and a few others in #tcl/the > > jabber chat, we believe there is an issue running tclkit on 64bit > > platforms from out side the directory tclkit is in. > > I routinely use tclkit from outside the directory tclkit is in on my Debian > lenny AMD64 system. > > I did find that the directory containing the starkit (not just the directory > containing tclkit) has to be in the PATH in order for tclkit to find the > starkit if it is not in the same directory, although I do not think this was > a 64-bit problem. > > Graham Ok, I have a copy of sdx (as well as tclkit) located in /usr/bin, which is most certainly in the path of Tcl...but not tclkit that I can find... [root@dhcp-192-168-0-14 ~]# echo $PATH /usr/kerberos/sbin:/usr/kerberos/bin:/usr/local/sbin:/usr/local/bin:/ sbin:/bin:/usr/sbin:/usr/bin:/root/bin [root@dhcp-192-168-0-14 ~]# tclkit application-specific initialization failed: couldn't open "setup.tcl": no such file or directory % puts $auto_path can't read "auto_path": no such variable % So, as you can see right here, running tclkit as a command shell even produces the error when tclkit is located in /usr/bin. Search me, but that seems like a bug to me. [root@dhcp-192-168-0-14 ~]# which tclkit /usr/bin/tclkit [root@dhcp-192-168-0-14 ~]# which sdx /usr/bin/sdx [root@dhcp-192-168-0-14 ~]# tclkit /usr/bin/sdx application-specific initialization failed: couldn't open "setup.tcl": no such file or directory can't find package starkit while executing "package require starkit" (file "/usr/bin/sdx" line 4) [root@dhcp-192-168-0-14 ~]# sdx application-specific initialization failed: couldn't open "setup.tcl": no such file or directory can't find package starkit while executing "package require starkit" (file "/usr/bin/sdx" line 4) [root@dhcp-192-168-0-14 ~]# /usr/bin/tclkit /usr/bin/sdx application-specific initialization failed: couldn't open "setup.tcl": no such file or directory can't find package starkit while executing "package require starkit" (file "/usr/bin/sdx" line 4) You told me to make sure the path to where tclkit is was in my $PATH, as I pasted above, tclkit and sdx both reside within the $PATH. [vadtec@dhcp-192-168-0-14 tcl-tk]$ echo $PATH /usr/kerberos/bin:/usr/local/bin:/bin:/usr/bin:/home/vadtec/bin [vadtec@dhcp-192-168-0-14 tcl-tk]$ which tclkit /usr/bin/tclkit [vadtec@dhcp-192-168-0-14 tcl-tk]$ which sdx /usr/bin/sdx [vadtec@dhcp-192-168-0-14 tcl-tk]$ pwd /home/vadtec/Downloads/tcl-tk [vadtec@dhcp-192-168-0-14 tcl-tk]$ tclkit application-specific initialization failed: couldn't open "setup.tcl": no such file or directory % exit [vadtec@dhcp-192-168-0-14 tcl-tk]$ ./sdx.kit application-specific initialization failed: couldn't open "setup.tcl": no such file or directory can't find package starkit while executing "package require starkit" (file "./sdx.kit" line 4) [vadtec@dhcp-192-168-0-14 tcl-tk]$ tclkit sdx.kit application-specific initialization failed: couldn't open "setup.tcl": no such file or directory can't find package starkit while executing "package require starkit" (file "sdx.kit" line 4) [vadtec@dhcp-192-168-0-14 tcl-tk]$ ./tclkit sdx.kit Specify one of the following commands: addtoc eval fetch ftpd httpd httpdist ls lsk md5sum mkinfo mkpack mkshow mksplit qwrap ratarx rexecd starsync sync tgz2kit treetime unwrap update version wrap For more information, type: sdx.kit help ?command? There is absolutely no reason for tclkit to not work if it depends on the $PATH environment containing the dir it is in, as the $PATH arguement already does this. So I still think there is an error in the way tclkit is getting its directory info, and it should be looking in its VFS not the FS for the setup.tcl it needs. Vadtec