Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

tdbcodbc110t.dll: dependent library missing on Win10 1809

43 views
Skip to first unread message

Harald Oehlmann

unread,
Aug 28, 2019, 9:44:35 AM8/28/19
to
Dear Team,

well, a desperate message.
On a client computer, tdbcodbc110t.dll does not load with the message
that the file or a dependent library may not be found.

Dependency walker only tells "tcl86t.dll" as dependency.

When I add that beside the exe, wish closes after typing enter of "load
tdbcodbc110t.dll" without any message.

On my own computer, I have no issue at all.

And it worked once and then, it stopped working.

DOes anybody has an idea on this ?

Is this security software ?

Thank you for any ideas,
Harald

Harald Oehlmann

unread,
Aug 28, 2019, 10:15:12 AM8/28/19
to
Of cause, all info missing:

the wish is the windows 32 starkit from Ashok with twapi (TCL 8.6.9).

The tdbc* is compiled by me with tcl8.6.9 distribution on 32 bit with
VC6 + PSDK2003SP1 (same as Ashok).

package require tdbc -> no problem
package require tdbc::sqlite3 -> no problem

If use my own self compiled wish on the same computer (so no starkit),
it works.

For me, the tdbc::odbc has a dependency on tcl86t.dll (which should not
be there due to stubs). But if this library is given, it just stops.

Strange strange...

Thank you,
Harald

Ashok

unread,
Aug 28, 2019, 11:37:13 AM8/28/19
to
How are you setting the package load path? Modifying auto_path?

Also what were your exact flags when building TDBC?

Ashok

unread,
Aug 28, 2019, 11:43:13 AM8/28/19
to
The other thought that comes to mind is the usual 32/64-bit differences.

Are you running on 32- or 64-bit Windows? Is the wish you built also 32-bit?

Christian Gollwitzer

unread,
Aug 28, 2019, 12:36:14 PM8/28/19
to
Am 28.08.19 um 16:14 schrieb Harald Oehlmann:
> For me, the tdbc::odbc has a dependency on tcl86t.dll (which should not
> be there due to stubs).

This is definitely wrong and means that it was not compiled correctly
(with stubs enabled).

> But if this library is given, it just stops.
>
> Strange strange...

Because then you load two (possibly different) versions of Tcl into the
same executable, the one built into wish and the one linked from the module.

Ergo: recompile tdbc with stubs.

Christian

Harald Oehlmann

unread,
Aug 28, 2019, 12:37:11 PM8/28/19
to
Ashok,

thank you for thinking, this is appreciated.

My normal way is to put it into:
starkit.vfs/lib/tdbcodbc1.1.0/pckIndex.tcl
starkit.vfs/lib/tdbcodbc1.1.0/tdbc.tcl
starkit.vfs/lib/tdbcodbc1.1.0/tdbc110t.dll

With that path, it ends up at the same position, as when it would be
initially wrapped.

I only do that with the bundled packages, as they are at this location,
if I compile tcl on my own.

But after that run into the error (which references the dll in temp), I
have removed it from the upper position, and moved it outside of the
starkit and added the folder to the auto_path (at the end).

E.g.:
- nothing in "starkit.vfs/lib/tdbcodbc1.1.0"
- in the same folder as "starkit.exe" a folder "lib" is created with:
./lib/tdbcodbc1.1.0/pckIndex.tcl
./lib/tdbcodbc1.1.0/tdbcodbc.tcl
./lib/tdbcodbc1.1.0/tdbcodbc110t.dll

lappend auto_path [file join [file dirname $starkit::topdir] lib]

Now, I get the error with the path
"./lib/tdbcodbc110t.dll/tdbcodbc110t.dll".

Then, I have copied my own tcl86t.dll from the tcl bin folder to the
same folder as the startkit.

I tried that due to the fact that dependencywalker (on the file
tdbcodbc110t.dll shows a dependency on tcl86t.dll.

The result is, that the starkits terminates without message when load
c:/test/lib/tdbcodbc1.1.0/tdbc110t.dll
is loaded. No core dump, nothing, just closing.

Then, the starkit is replaced by the non-wraped distribution started
with my own compiled wish. The odbc loads correctly...

So, that is the story so far...

Thank you,
Harald

Harald Oehlmann

unread,
Aug 28, 2019, 12:39:14 PM8/28/19
to
I am running on 64 bit System Windows 10 1809.

The TCL is all 32 bit only. Anything is 32 bit.

Thank you,
Harald

Harald Oehlmann

unread,
Aug 28, 2019, 12:42:22 PM8/28/19
to
Yes, that is also my conclusion, thank you.

I compiled tcl 8.6.9 with standard bundled packages and all other
packages works. It is only tdbcodbc.
I suppose, there is an issue in the makefile.

Nevertheless thank you underlining my conclusion.
I will try and report back.

It is also interesting, that this happens on 2 of 3 computers.
My own development computer works, all client computers not (which have
no installed TCL) (activetcl installed).

I will come back !

Thanks,
Harald

Ashok

unread,
Aug 28, 2019, 12:44:35 PM8/28/19
to
Christian's explanation makes sense as to why it loads in wish but not
in the tclkit. Posting how you built tdbc and tdbcodbc will help
troubleshooting.

/Ashok

Harald Oehlmann

unread,
Aug 28, 2019, 3:32:40 PM8/28/19
to
Yes, with pleasure:

tcl8.6.9 source distribution in folder: C:\test\tcl8.6.9_tdbcodbc.

C:\test>VCVARS32_vc6.BAT
Setting environment for using Microsoft Visual C++ tools.
C:\test>setenv /RETAIL
Targeting Windows 2000 and IE 5.0 RETAIL
C:\test>cd tcl8.6.9_tdbcodbc\win
C:\test\tcl8.6.9_tdbcodbc\win>nmake -f makefile.vc > makelog.txt 2>&1

So, Visual C++ 6 and PlatformSDK 2003SP1 is initialized in a command
line. THen, a make using makefile.vc is performed.

I have verified using dependency walker:
tdbc1.1.0.dll does not contain dependency on tcl86.dll
tdbcodbc1.1.0.dll contains a dependency on tcl86.dll

The logs for library tdbc and tdbcodbc have the identical parameters for
rc, compile and link. The log details are below.
Both include "-DUSE_TCL_STUBS -DUSE_TCLOO_STUBS" on compilation and both
link with "tclstub86.lib" and tcl86t.lib.

I will try to get the dependency "tcl86t.lib" out.

Thank you,
Harald

--- TDBC.DLL ---

rc -fo
C:\test\tcl8.6.9_tdbcodbc\pkgs\tdbc1.1.0\win\Release\tdbc_ThreadedDynamic\tdbc.res
-r -i "C:\test\tcl8.6.9_tdbcodbc\pkgs\tdbc1.1.0\win\..\generic" -i
"C:\test\tcl8.6.9_tdbcodbc\pkgs\tdbc1.1.0\win\Release\tdbc_ThreadedDynamic"
-I"C:\test\tcl8.6.9_tdbcodbc\win\..\generic"
-I"C:\test\tcl8.6.9_tdbcodbc\win\..\win" -DDEBUG=0 -d UNCHECKED=0
-DCOMMAVERSION=1,1,0,0 -DDOTVERSION=\"1.1.0\" -DVERSION=\"110\"
-DSUFX=\"t\" -DPROJECT=\"tdbc\" -DPRJLIBNAME=\"tdbc110t.dll\"
C:\test\tcl8.6.9_tdbcodbc\pkgs\tdbc1.1.0\win\..\win\tdbc.rc
cl -nologo -c /D_ATL_XP_TARGETING -W3
-FpC:\test\tcl8.6.9_tdbcodbc\pkgs\tdbc1.1.0\win\Release\tdbc_ThreadedDynamic\
-Op -QI0f -O2 -YX -MD -I"C:\test\tcl8.6.9_tdbcodbc\win\..\generic"
-I"C:\test\tcl8.6.9_tdbcodbc\win\..\win"
-I"C:\test\tcl8.6.9_tdbcodbc\pkgs\tdbc1.1.0\win\..\generic"
-I"C:\test\tcl8.6.9_tdbcodbc\pkgs\tdbc1.1.0\win\..\win"
-I"C:\test\tcl8.6.9_tdbcodbc\pkgs\tdbc1.1.0\win\..\compat"
-DTCL_CFGVAL_ENCODING=\"cp1252\" -DSTDC_HEADERS -DTCL_THREADS=1
-DUSE_THREAD_ALLOC=1 -DNDEBUG -DTCL_CFG_OPTIMIZED -DNO_STRTOI64
-DUSE_TCL_STUBS -DUSE_TCLOO_STUBS -DPACKAGE_NAME="\"tdbc\""
-DPACKAGE_TCLNAME="\"tdbc\"" -DPACKAGE_VERSION="\"1.1.0\""
-DMODULE_SCOPE=extern -DBUILD_tdbc
-FoC:\test\tcl8.6.9_tdbcodbc\pkgs\tdbc1.1.0\win\Release\tdbc_ThreadedDynamic\
@C:\Users\oehhar\AppData\Local\Temp\nmCCB9.tmp
tdbc.c
tdbcStubInit.c
tdbcTokenize.c
link -nologo -machine:IX86 -release -opt:ref -opt:icf,3 -opt:nowin98
-dll
-out:C:\test\tcl8.6.9_tdbcodbc\pkgs\tdbc1.1.0\win\Release\tdbc110t.dll
kernel32.lib advapi32.lib
"C:\test\tcl8.6.9_tdbcodbc\win\..\win\Release\tclstub86.lib"
"C:\test\tcl8.6.9_tdbcodbc\win\..\win\Release\tcl86t.lib"
C:\test\tcl8.6.9_tdbcodbc\pkgs\tdbc1.1.0\win\Release\tdbc_ThreadedDynamic\tdbc.obj
C:\test\tcl8.6.9_tdbcodbc\pkgs\tdbc1.1.0\win\Release\tdbc_ThreadedDynamic\tdbcStubInit.obj
C:\test\tcl8.6.9_tdbcodbc\pkgs\tdbc1.1.0\win\Release\tdbc_ThreadedDynamic\tdbcTokenize.obj
C:\test\tcl8.6.9_tdbcodbc\pkgs\tdbc1.1.0\win\Release\tdbc_ThreadedDynamic\tdbc.res
Creating library
C:\test\tcl8.6.9_tdbcodbc\pkgs\tdbc1.1.0\win\Release\tdbc110t.lib and
object C:\test\tcl8.6.9_tdbcodbc\pkgs\tdbc1.1.0\win\Release\tdbc110t.exp
cl -nologo -c /D_ATL_XP_TARGETING -W3
-FpC:\test\tcl8.6.9_tdbcodbc\pkgs\tdbc1.1.0\win\Release\tdbc_ThreadedDynamic\
-Op -QI0f -O2 -YX -DPACKAGE_NAME="\"tdbc\""
-DPACKAGE_TCLNAME="\"tdbc\"" -DPACKAGE_VERSION="\"1.1.0\""
-DMODULE_SCOPE=extern -DTCL_CFGVAL_ENCODING=\"cp1252\" -DSTDC_HEADERS
-DTCL_THREADS=1 -DUSE_THREAD_ALLOC=1 -DNDEBUG -DTCL_CFG_OPTIMIZED
-DNO_STRTOI64 -Zl -DSTATIC_BUILD
-I"C:\test\tcl8.6.9_tdbcodbc\win\..\generic"
-I"C:\test\tcl8.6.9_tdbcodbc\win\..\win"
-I"C:\test\tcl8.6.9_tdbcodbc\pkgs\tdbc1.1.0\win\..\generic"
-I"C:\test\tcl8.6.9_tdbcodbc\pkgs\tdbc1.1.0\win\..\win"
-I"C:\test\tcl8.6.9_tdbcodbc\pkgs\tdbc1.1.0\win\..\compat"
-FoC:\test\tcl8.6.9_tdbcodbc\pkgs\tdbc1.1.0\win\Release\tdbc_ThreadedDynamic\
C:\test\tcl8.6.9_tdbcodbc\pkgs\tdbc1.1.0\win\..\generic\tdbcStubLib.c
tdbcStubLib.c
lib -nologo
-out:C:\test\tcl8.6.9_tdbcodbc\pkgs\tdbc1.1.0\win\Release\tdbcstub110.lib C:\test\tcl8.6.9_tdbcodbc\pkgs\tdbc1.1.0\win\Release\tdbc_ThreadedDynamic\tdbcStubLib.obj

--- TDBCODBC.DLL ---

rc -fo
C:\test\tcl8.6.9_tdbcodbc\pkgs\tdbcodbc1.1.0\win\Release\tdbcodbc_ThreadedDynamic\tdbcodbc.res
-r -i "C:\test\tcl8.6.9_tdbcodbc\pkgs\tdbcodbc1.1.0\win\..\generic" -i
"C:\test\tcl8.6.9_tdbcodbc\pkgs\tdbcodbc1.1.0\win\Release\tdbcodbc_ThreadedDynamic"
-I"C:\test\tcl8.6.9_tdbcodbc\win\..\generic"
-I"C:\test\tcl8.6.9_tdbcodbc\win\..\win" -DDEBUG=0 -d UNCHECKED=0
-DCOMMAVERSION=1,1,0,0 -DDOTVERSION=\"1.1.0\" -DVERSION=\"110\"
-DSUFX=\"t\" -DPROJECT=\"tdbcodbc\" -DPRJLIBNAME=\"tdbcodbc110t.dll\"
C:\test\tcl8.6.9_tdbcodbc\pkgs\tdbcodbc1.1.0\win\Release\tdbcodbc_ThreadedDynamic\tdbcodbc.rc
cl -nologo -c /D_ATL_XP_TARGETING -W3
-FpC:\test\tcl8.6.9_tdbcodbc\pkgs\tdbcodbc1.1.0\win\Release\tdbcodbc_ThreadedDynamic\
-Op -QI0f -O2 -YX -MD -I"C:\test\tcl8.6.9_tdbcodbc\win\..\generic"
-I"C:\test\tcl8.6.9_tdbcodbc\win\..\win"
-I"C:\test\tcl8.6.9_tdbcodbc\pkgs\tdbc1.1.0\generic"
-I"C:\test\tcl8.6.9_tdbcodbc\pkgs\tdbcodbc1.1.0\win\..\generic"
-I"C:\test\tcl8.6.9_tdbcodbc\pkgs\tdbcodbc1.1.0\win\..\win"
-I"C:\test\tcl8.6.9_tdbcodbc\pkgs\tdbcodbc1.1.0\win\..\compat"
-Dinline=__inline -DTCL_CFGVAL_ENCODING=\"cp1252\" -DSTDC_HEADERS
-DTCL_THREADS=1 -DUSE_THREAD_ALLOC=1 -DNDEBUG -DTCL_CFG_OPTIMIZED
-DNO_STRTOI64 -DUSE_TCL_STUBS -DUSE_TCLOO_STUBS
-DPACKAGE_NAME="\"tdbcodbc\"" -DPACKAGE_TCLNAME="\"tdbcodbc\""
-DPACKAGE_VERSION="\"1.1.0\"" -DMODULE_SCOPE=extern -DBUILD_tdbcodbc
-FoC:\test\tcl8.6.9_tdbcodbc\pkgs\tdbcodbc1.1.0\win\Release\tdbcodbc_ThreadedDynamic\
@C:\Users\oehhar\AppData\Local\Temp\nmE330.tmp
tdbcodbc.c
C:\test\tcl8.6.9_tdbcodbc\pkgs\tdbcodbc1.1.0\win\..\generic\tdbcodbc.c(5095)
: warning C4018: '==' : signed/unsigned mismatch
C:\test\tcl8.6.9_tdbcodbc\pkgs\tdbcodbc1.1.0\win\..\generic\tdbcodbc.c(5285)
: warning C4018: '==' : signed/unsigned mismatch
odbcStubInit.c
C:\test\tcl8.6.9_tdbcodbc\pkgs\tdbcodbc1.1.0\win\..\generic\tdbcodbc.c(2666)
: warning C4761: integral size mismatch in argument; conversion supplied
C:\test\tcl8.6.9_tdbcodbc\pkgs\tdbcodbc1.1.0\win\..\generic\tdbcodbc.c(3886)
: warning C4761: integral size mismatch in argument; conversion supplied
C:\test\tcl8.6.9_tdbcodbc\pkgs\tdbcodbc1.1.0\win\..\generic\tdbcodbc.c(3900)
: warning C4761: integral size mismatch in argument; conversion supplied
C:\test\tcl8.6.9_tdbcodbc\pkgs\tdbcodbc1.1.0\win\..\generic\tdbcodbc.c(3904)
: warning C4761: integral size mismatch in argument; conversion supplied
C:\test\tcl8.6.9_tdbcodbc\pkgs\tdbcodbc1.1.0\win\..\generic\tdbcodbc.c(3904)
: warning C4761: integral size mismatch in argument; conversion supplied
C:\test\tcl8.6.9_tdbcodbc\pkgs\tdbcodbc1.1.0\win\..\generic\tdbcodbc.c(3906)
: warning C4761: integral size mismatch in argument; conversion supplied
C:\test\tcl8.6.9_tdbcodbc\pkgs\tdbcodbc1.1.0\win\..\generic\tdbcodbc.c(3909)
: warning C4761: integral size mismatch in argument; conversion supplied
C:\test\tcl8.6.9_tdbcodbc\pkgs\tdbcodbc1.1.0\win\..\generic\tdbcodbc.c(3915)
: warning C4761: integral size mismatch in argument; conversion supplied
C:\test\tcl8.6.9_tdbcodbc\pkgs\tdbcodbc1.1.0\win\..\generic\tdbcodbc.c(3915)
: warning C4761: integral size mismatch in argument; conversion supplied
C:\test\tcl8.6.9_tdbcodbc\pkgs\tdbcodbc1.1.0\win\..\generic\tdbcodbc.c(1432)
: warning C4761: integral size mismatch in argument; conversion supplied
C:\test\tcl8.6.9_tdbcodbc\pkgs\tdbcodbc1.1.0\win\..\generic\tdbcodbc.c(4304)
: warning C4761: integral size mismatch in argument; conversion supplied
C:\test\tcl8.6.9_tdbcodbc\pkgs\tdbcodbc1.1.0\win\..\generic\tdbcodbc.c(4324)
: warning C4761: integral size mismatch in argument; conversion supplied
C:\test\tcl8.6.9_tdbcodbc\pkgs\tdbcodbc1.1.0\win\..\generic\tdbcodbc.c(4358)
: warning C4761: integral size mismatch in argument; conversion supplied
C:\test\tcl8.6.9_tdbcodbc\pkgs\tdbcodbc1.1.0\win\..\generic\tdbcodbc.c(4416)
: warning C4761: integral size mismatch in argument; conversion supplied
C:\test\tcl8.6.9_tdbcodbc\pkgs\tdbcodbc1.1.0\win\..\generic\tdbcodbc.c(5071)
: warning C4761: integral size mismatch in argument; conversion supplied
C:\test\tcl8.6.9_tdbcodbc\pkgs\tdbcodbc1.1.0\win\..\generic\tdbcodbc.c(5261)
: warning C4761: integral size mismatch in argument; conversion supplied
link -nologo -machine:IX86 -release -opt:ref -opt:icf,3 -opt:nowin98
-dll
-out:C:\test\tcl8.6.9_tdbcodbc\pkgs\tdbcodbc1.1.0\win\Release\tdbcodbc110t.dll
kernel32.lib advapi32.lib
C:\test\tcl8.6.9_tdbcodbc\pkgs\tdbc1.1.0\win\Release\tdbcstub110.lib
"C:\test\tcl8.6.9_tdbcodbc\win\..\win\Release\tclstub86.lib"
"C:\test\tcl8.6.9_tdbcodbc\win\..\win\Release\tcl86t.lib"
C:\test\tcl8.6.9_tdbcodbc\pkgs\tdbcodbc1.1.0\win\Release\tdbcodbc_ThreadedDynamic\tdbcodbc.obj
C:\test\tcl8.6.9_tdbcodbc\pkgs\tdbcodbc1.1.0\win\Release\tdbcodbc_ThreadedDynamic\odbcStubInit.obj
C:\test\tcl8.6.9_tdbcodbc\pkgs\tdbcodbc1.1.0\win\Release\tdbcodbc_ThreadedDynamic\tdbcodbc.res
Creating library
C:\test\tcl8.6.9_tdbcodbc\pkgs\tdbcodbc1.1.0\win\Release\tdbcodbc110t.lib and
object
C:\test\tcl8.6.9_tdbcodbc\pkgs\tdbcodbc1.1.0\win\Release\tdbcodbc110t.exp


Christian Gollwitzer

unread,
Aug 28, 2019, 3:51:30 PM8/28/19
to
Am 28.08.19 um 21:32 schrieb Harald Oehlmann:
> The logs for library tdbc and tdbcodbc have the identical parameters for
> rc, compile and link. The log details are below.
> Both include "-DUSE_TCL_STUBS -DUSE_TCLOO_STUBS" on compilation and both
> link with "tclstub86.lib" and tcl86t.lib.

Which is obviously wrong. It should link exclusively to tclstub86.lib.

Christian

Harald Oehlmann

unread,
Aug 28, 2019, 4:22:16 PM8/28/19
to
Am 28.08.2019 um 21:32 schrieb Harald Oehlmann:
>
> The logs for library tdbc and tdbcodbc have the identical parameters for
> rc, compile and link. The log details are below.
> Both include "-DUSE_TCL_STUBS -DUSE_TCLOO_STUBS" on compilation and both
> link with "tclstub86.lib" and tcl86t.lib.
>
> I will try to get the dependency "tcl86t.lib" out.

I have tried to link tdbcodbc without tcl86t.lib.

I get 3 link errors:

C:\test\tcl8.6.9_tdbcodbc\pkgs\tdbcodbc1.1.0\win>link -nologo
-machine:IX86 -release -opt:ref -opt:icf,3 -opt:nowin98 -dll
-out:C:\test\tcl8.6.9_tdbcodbc\pkgs\tdbcodbc1.1.0\win\Release\tdbcodbc110t.dll
kernel32.lib advapi32.lib
C:\test\tcl8.6.9_tdbcodbc\pkgs\tdbc1.1.0\win\Release\tdbcstub110.lib
"C:\test\tcl8.6.9_tdbcodbc\win\..\win\Release\tclstub86.lib"
C:\test\tcl8.6.9_tdbcodbc\pkgs\tdbcodbc1.1.0\win\Release\tdbcodbc_ThreadedDynamic\tdbcodbc.obj
C:\test\tcl8.6.9_tdbcodbc\pkgs\tdbcodbc1.1.0\win\Release\tdbcodbc_ThreadedDynamic\odbcStubInit.obj
C:\test\tcl8.6.9_tdbcodbc\pkgs\tdbcodbc1.1.0\win\Release\tdbcodbc_ThreadedDynamic\tdbcodbc.res
Creating library
C:\test\tcl8.6.9_tdbcodbc\pkgs\tdbcodbc1.1.0\win\Release\tdbcodbc110t.lib and
object
C:\test\tcl8.6.9_tdbcodbc\pkgs\tdbcodbc1.1.0\win\Release\tdbcodbc110t.exp
tdbcstub110.lib(tdbcStubLib.obj) : error LNK2001: unresolved external
symbol _Tcl_AppendResult
tdbcstub110.lib(tdbcStubLib.obj) : error LNK2001: unresolved external
symbol _Tcl_ResetResult
tdbcstub110.lib(tdbcStubLib.obj) : error LNK2001: unresolved external
symbol _Tcl_PkgRequireEx
C:\test\tcl8.6.9_tdbcodbc\pkgs\tdbcodbc1.1.0\win\Release\tdbcodbc110t.dll :
fatal error LNK1120: 3 unresolved externals

-> tdbcstublib.c is not build with tcl stubs enabled:

So rebuild it with -DUSE_TCL_STUBS inserted:

cl -nologo -c /D_ATL_XP_TARGETING -W3
-FpC:\test\tcl8.6.9_tdbcodbc\pkgs\tdbc1.1.0\win\Release\tdbc_ThreadedDynamic\
-Op -QI0f -O2 -YX -DPACKAGE_NAME="\"tdbc\""
-DPACKAGE_TCLNAME="\"tdbc\"" -DPACKAGE_VERSION="\"1.1.0\""
-DMODULE_SCOPE=extern -DTCL_CFGVAL_ENCODING=\"cp1252\" -DSTDC_HEADERS
-DTCL_THREADS=1 -DUSE_THREAD_ALLOC=1 -DNDEBUG -DTCL_CFG_OPTIMIZED
-DNO_STRTOI64 -DUSE_TCL_STUBS -Zl -DSTATIC_BUILD
-I"C:\test\tcl8.6.9_tdbcodbc\win\..\generic"
-I"C:\test\tcl8.6.9_tdbcodbc\win\..\win"
-I"C:\test\tcl8.6.9_tdbcodbc\pkgs\tdbc1.1.0\win\..\generic"
-I"C:\test\tcl8.6.9_tdbcodbc\pkgs\tdbc1.1.0\win\..\win"
-I"C:\test\tcl8.6.9_tdbcodbc\pkgs\tdbc1.1.0\win\..\compat"
-FoC:\test\tcl8.6.9_tdbcodbc\pkgs\tdbc1.1.0\win\Release\tdbc_ThreadedDynamic\
C:\test\tcl8.6.9_tdbcodbc\pkgs\tdbc1.1.0\win\..\generic\tdbcStubLib.c

lib -nologo
-out:C:\test\tcl8.6.9_tdbcodbc\pkgs\tdbc1.1.0\win\Release\tdbcstub110.lib C:\test\tcl8.6.9_tdbcodbc\pkgs\tdbc1.1.0\win\Release\tdbc_ThreadedDynamic\tdbcStubLib.obj

Now, tdbcodbc links without tcl86.lib (command as above, but no errors).
Dependency Walker states that the dependency on TCL86T.DLL is gone.

In conclusion, the compile of tdbcstublib.c should define -DUSE_TCL_STUBS.

I have no idea where to put this into the makefile.

And I don't understand why others using this file (tdbcsqlite3) do not
have that dependency...

I hope, all information is included in this ticket:

https://core.tcl-lang.org/tdbc/tktview/d6c4db25560b1a8c3a26f9369e57cf00327cb9b4

Thank you,
Harald

Harald Oehlmann

unread,
Aug 28, 2019, 4:39:39 PM8/28/19
to
Thanks Christian. Thats what I did and thus found the reason, see my
other post.

It is great that you and Ashok are here. Not easy to keep clear thinking...

THank you,
Harald

Ashok

unread,
Aug 28, 2019, 10:26:35 PM8/28/19
to
I have updated the ticket.

Why is it whenever I look at a problem it turns out to be I'm the guilty
party!
0 new messages