Ticket Hash: | 185c99634a6156df4d9602aaf09b1c2c165cde77 | |||
Title: | MS-VS make: library name misses t in non-installed test for tdbc119t.dll | |||
Status: | Closed | Type: | Build_Problem | |
Severity: | Minor | Priority: | Immediate | |
Subsystem: | Resolution: | Fixed | ||
Last Modified: | 2024-09-11 06:28:43 | |||
Version Found In: | main | |||
User Comments: | ||||
oehhar added on 2024-09-10 16:44:20:
Within the tcl8.6.15rc0 release tarball and using MS-VC6 compiler and 32 bit compile. The "make test" failes due to a missing "t" in the library name of tdbc When doing nmake -f Makefile.vc test without installation in TCL 8.6, the bundled package failes with the following log, as "tdbc119.dll" is searched without "t": testing tdbcodbc against Jet C:\test\tcl8.6.15rc0\tcl8.6.15\win\..\win\Release\tclsh86t.exe "C:/test/tcl8.6.15rc0/tcl8.6.15/pkgs/tdbcodbc1.1.9/win/../tests/all.tcl" -verbose bte -load "package ifneeded tdbc::odbc 1.1.9 {source {C:/test/tcl8.6.15rc0/tcl8.6.15/pkgs/tdbcodbc1.1.9/win/../library/tdbcodbc.tcl};load {C:/test/tcl8.6.15rc0/tcl8.6.15/pkgs/tdbcodbc1.1.9/win/Release/tdbcodbc119t.dll} [string totitle tdbcodbc]}; package ifneeded tdbc 1.1.9 {source {C:/test/tcl8.6.15rc0/tcl8.6.15/pkgs/tdbc1.1.9/win/Release/tdbc.tcl};load {C:/test/tcl8.6.15rc0/tcl8.6.15/pkgs/tdbc1.1.9/win/Release/tdbc119.dll} Tdbc}" Tests running in interp: C:/test/tcl8.6.15rc0/tcl8.6.15/win/Release/tclsh86t.exe Tests located in: C:/test/tcl8.6.15rc0/tcl8.6.15/pkgs/tdbcodbc1.1.9/tests Tests running in: C:/test/tcl8.6.15rc0/tcl8.6.15/pkgs/tdbcodbc1.1.9/win Temporary files stored in C:/test/tcl8.6.15rc0/tcl8.6.15/pkgs/tdbcodbc1.1.9/win Test files run in separate interpreters Running tests that match: * Skipping test files that match: l.*.test Only running test files that match: *.test Tests began at Mon Sep 09 08:50:33 +0200 2024 tdbcodbc.test Test file error: couldn't load library "C:/test/tcl8.6.15rc0/tcl8.6.15/pkgs/tdbc1.1.9/win/Release/tdbc119.dll": this library or a dependent library could not be found in library path while executing "load {C:/test/tcl8.6.15rc0/tcl8.6.15/pkgs/tdbc1.1.9/win/Release/tdbc119.dll} Tdbc" ("package ifneeded tdbc 1.1.9" script) invoked from within "package require tdbc" (file "C:/test/tcl8.6.15rc0/tcl8.6.15/pkgs/tdbcodbc1.1.9/win/../library/tdbcodbc.tcl" line 13) invoked from within "source {C:/test/tcl8.6.15rc0/tcl8.6.15/pkgs/tdbcodbc1.1.9/win/../library/tdbcodbc.tcl}" ("package ifneeded tdbc::odbc 1.1.9" script) invoked from within "package require tdbc::odbc" (file "C:/test/tcl8.6.15rc0/tcl8.6.15/pkgs/tdbcodbc1.1.9/tests/tdbcodbc.test" line 16) The relevant line of the makefile is IMHO: package ifneeded tdbc $(TDBC_DOTVERSION) \ {source {$(TDBC_BIN_DIR:\=/)/tdbc.tcl};load {$(TDBC_BIN_DIR:\=/)/$(TDBC_LIB_FILE)} Tdbc}" The relevant reference "TDBC_LIB_FILE" is defined as: tdbc$(TDBC_VERSION).dlland should be tdbc$(TDBC_VERSION)$(SUFX).dll oehhar added on 2024-09-10 16:46:35: Fixed by [41f854e866]. Closing. oehhar added on 2024-09-11 06:28:43: Added in mysql: https://core.tcl-lang.org/tdbcmysql/info/a744c8c421d61699 and Postgresql: https://core.tcl-lang.org/tdbcpostgres/info/76bf4c7feb6f3221 |