Tcl Source Code

View Ticket
Login
Ticket UUID: 854941
Title: Stubs needs a loading/cataloging complement
Type: RFE Version: None
Submitter: davygrvy Created on: 2003-12-05 18:20:07
Subsystem: 50. Embedding Support Assigned To: jan.nijtmans
Priority: 5 Medium Severity: Minor
Status: Closed Last Modified: 2024-09-21 09:42:07
Resolution: Fixed Closed By: pooryorick
    Closed on: 2024-09-21 09:42:07
Description:
When one uses Stubs to build applications that embed 
Tcl (not extensions), numerous problems are obvious, 
especially on win32.

1) discovering where a Tcl core is is a very difficult 
problem.  Scriptics used HKLM\Software\Scriptics\Tcl in 
their installers, ActiveState uses a different registry key, 
and the makefiles don't set any key.  So when an app 
starts and tries to discover where Tcl is, it gets rather 
complicated and is very fragile.

2) given that you know where a core is located, what 
features does it (they) have?  Does it have symbols and 
memory tracing?  What if I only want a release build with 
memdbg at 8.3.3 only?  What if I can use any core @ 
8.4.1+ but without symbols and don't mind if it has 
threading?  Some info I can derive from the suffix such 
as 't' for threading (but only with makefile.vc as TEA 
doesn't recognize it as a standard suffix), but 'g' isn't as 
meaningful.  'g' could mean only memdbg without 
symbols.

3) As Stubs is the method for runtime linking, it would 
make sense to me that it contain the method for 
connecting to the catalog and loading the core 
requested.

I will add more thoughts to this FR at a later time..
User Comments: jan.nijtmans added on 2021-10-31 15:13:43:

Since TIP #596 is accepted now for Tcl 9.0, this can be closed.


jan.nijtmans added on 2021-02-23 17:31:15:

TIP #596 https://core.tcl-lang.org/tips/doc/trunk/tip/596.md concept is there now.


jan.nijtmans added on 2013-07-05 11:12:43:
More complete implementation in [717ee454f7], not requiring TIP #414 any more
(although TIP #414 would make it more efficient).

jan.nijtmans added on 2013-07-02 12:07:07:

First experimental implementation in [ccb77d8416]


jan.nijtmans added on 2013-07-02 10:45:33:

Here is an example how this can be done. https://www.fossil-scm.org/fossil/info/25f7fa1157

TIP #414 is a tiny first step making this easier.


davygrvy added on 2003-12-06 04:25:37:
Logged In: YES 
user_id=7549

3.1) IOW, tclstub8x.lib should contain the code to find and 
load a tcl core.