Reason why there are two DLLs for Windows: In http://purl.org/tcl/tip/72.html is stated that sizeof(Tcl_Value) has changed from Tcl 8.3 to 8.4. This causes - very unfortunately - incompatibility between the stubs libraries of 8.3 and 8.4 for new math functions with more than one argument, like in mkGeneric. The two DLLs are made from the same source, mkGeneric13.c, but linked against two different stubs libraries. The pkgIndex.tcl file loads the appropriate version. mkGeneric13_84.dll should be good for future versions as well.