From: Tobias Vesterlund on
Hi,

I'm trying to build a star pack of some tcl code & dll's. 1 is
homemade and 1 is tclsqlite3.dll.

If I run tclsh85 folder.vfs/main.tcl everything works as expected but
when I run tclkit-8.5.8-win32.upx.exe folder.vfs/main.tcl it crashes
on using a function from the homemade dll.

[info patchlevel] returns 8.5.8 (same as tclkit).

Anyone has any idea what is/could be wrong and how to fix it?

Regards,
Tobias
From: Arjen Markus on
On 26 mei, 13:41, Tobias Vesterlund <vak...(a)gmail.com> wrote:
> Hi,
>
> I'm trying to build a star pack of some tcl code & dll's. 1 is
> homemade and 1 is tclsqlite3.dll.
>
> If I run tclsh85 folder.vfs/main.tcl everything works as expected but
> when I run tclkit-8.5.8-win32.upx.exe folder.vfs/main.tcl it crashes
> on using a function from the homemade dll.
>
> [info patchlevel] returns 8.5.8 (same as tclkit).
>
> Anyone has any idea what is/could be wrong and how to fix it?
>
> Regards,
> Tobias

One quick way to get some insight in what is going on is to write
out information to a file and compare the results when it is run
from tclsh and from tclkit. It is an old but still definitely
useful debugging method.

My first guess would be an uninitialised variable that is set to
a very different value in the case of tclkit. Be sure to flush
the file after each write.

Regards,

Arjen
From: Jeff Hobbs on
On May 26, 4:41 am, Tobias Vesterlund <vak...(a)gmail.com> wrote:
> I'm trying to build a star pack of some tcl code & dll's. 1 is
> homemade and 1 is tclsqlite3.dll.
>
> If I run tclsh85 folder.vfs/main.tcl everything works as expected but
> when I run tclkit-8.5.8-win32.upx.exe folder.vfs/main.tcl it crashes
> on using a function from the homemade dll.
>
> [info patchlevel] returns 8.5.8 (same as tclkit).
>
> Anyone has any idea what is/could be wrong and how to fix it?

Your homemade DLL is not built with stubs. Ensure it uses stubs and
links against -ltclstub, not -ltcl.

Jeff