Hi,
I am using TclDevkit 4.0 for creating the exe in windows.I am using threaded prefix and ActiveTcl 8.4.19.I successfully wrapped the exe in windows.While executing the exe created i had a error as
Can't find a usable itk.tcl in the following directories:
This probably means that Itcl/Itk is not installed properly
you can set the ITK_LIBRARY to point.
while executing
"error $msg".......
I had included the packages
package require Iwidgets
package require BWidget
package require Expect
I found that the problem is with the IWidgets.Because in iwidgets they are using Itcl and Itk packages as old version 3.2 but the ActiveTcl has 3.4 version.Please guide me to create a exe using TclDevkit 4.0 or higher using thread prefix.
Thanks,
Naveen
| Attachment | Size |
|---|---|
| error.GIF | 13.87 KB |
Hi Naveen,
Can you please tell me ,where you kept that Bwidget,so that wrapped it with your application?
Thanks,
Sivabalan K
Hello Naveen.
Regarding the 3.2/3.4 difference please note that Iwidget doing a 'package require 3.2' does not mean that Itcl/Itk 3.4 are unusable. Tcl's package management system will accept 3.4 in that case, as it is a higher version with the same major version.
It is not clear to me yet which part of the code complained about the version difference 3.4 vs. 3.3. you are showing in the attached error picture.
Can you tell us where you got the Itk package from, and how you wrapped it ?
The Iwidgets package needs both the Itk and the Itcl package to run.
The Itcl package comes pre-wrapped in the base-tk-thread basekit.
The 'Can't find a usable itk.tcl in the following directorie' seems to be a different problem altogether. I.e. if the code complains about a version difference, then the Itk package was already loaded correctly and just is rejected from use. The 'Can't find' error however means that the dll was not loaded at all and the package management aborts way earlier.
So this seems to come from a different attempt at wrapping, with a different Itk than the other error. Can you tell us where you got this other Itk package from, and how you wrapped it ?
Researching a bit more this second error looks like it is an instance of
http://bugs.activestate.com/show_bug.cgi?id=77804 which was reported for 4.1. TDK 4.0 likely has the same problem. The first released version containing a fix was TDK 5.0.
To test I would recommend to get a trial version of TDK 5 and see if that fixes the problem.
At this point I am a bit confused what was tried when using what, as the report seems to be about at least two different attempts with at least two different versions of Itk failing in two different ways. I find untangling this is to be a bit difficult.