--- src/bltInit.c.orig	2008-05-29 00:05:10.000000000 +0200
+++ src/bltInit.c	2008-05-29 00:26:40.000000000 +0200
@@ -413,7 +413,7 @@ Blt_Init(interp)
 	 * Check that the versions of Tcl that have been loaded are
 	 * the same ones that BLT was compiled against.
 	 */
-	if (Tcl_PkgRequire(interp, "Tcl", TCL_VERSION, EXACT) == NULL) {
+	if (Tcl_InitStubs(interp, TCL_VERSION, 1) == NULL) {
 	    return TCL_ERROR;
 	}
 	/* Set the "blt_version", "blt_patchLevel", and "blt_libPath" Tcl
@@ -458,16 +458,23 @@ Blt_Init(interp)
 	register Tcl_AppInitProc **p;
 	Tcl_Namespace *nsPtr;
 
+	if (Tk_InitStubs(interp, TK_VERSION, 1) == NULL) {
+		return TCL_OK;
+	}
+
+#if 0
 #if (TCL_VERSION_NUMBER >= _VERSION(8,1,0)) 
 	if (Tcl_PkgPresent(interp, "Tk", TK_VERSION, EXACT) == NULL) {
 	    return TCL_OK;
-	} 
+	}
 #else
 	if (Tcl_PkgRequire(interp, "Tk", TK_VERSION, EXACT) == NULL) {
 	    Tcl_ResetResult(interp);
 	    return TCL_OK;
 	} 
 #endif
+#endif
+
 	nsPtr = Tcl_CreateNamespace(interp, "blt::tile", NULL, 
 			    (Tcl_NamespaceDeleteProc *) NULL);
 	if (nsPtr == NULL) {
@@ -507,7 +514,7 @@ Blt_Init(interp)
 	 * Check that the versions of Tcl that have been loaded are
 	 * the same ones that BLT was compiled against.
 	 */
-	if (Tcl_PkgRequire(interp, "Tcl", TCL_VERSION, EXACT) == NULL) {
+	if (Tcl_InitStubs(interp, TCL_VERSION, EXACT) == NULL) {
 	    return TCL_ERROR;
 	}
 	/* Set the "blt_version", "blt_patchLevel", and "blt_libPath" Tcl
@@ -543,6 +550,11 @@ Blt_Init(interp)
     if (!tkLoaded) {
 	register Tcl_AppInitProc **p;
 
+	if (Tk_InitStubs(interp, TK_VERSION, 1) == NULL) {
+		return TCL_OK;
+	}
+
+#if 0
 #if (TCL_VERSION_NUMBER >= _VERSION(8,1,0)) 
 	if (Tcl_PkgPresent(interp, "Tk", TK_VERSION, EXACT) == NULL) {
 	    return TCL_OK;
@@ -553,6 +565,8 @@ Blt_Init(interp)
 	    return TCL_OK;
 	} 
 #endif
+#endif
+
 	/* Initialize the BLT commands that use Tk too. */
 	for (p = tkCmds; *p != NULL; p++) {
 	    if ((**p) (interp) != TCL_OK) {
