diff --git a/NT/tools/rntcl b/NT/tools/rntcl
index 74a2cab90308837a8058beb4ac6cb525035f3916..a55173f76f3a3f31f6ab69782308b75d6be95eee 100755
--- a/NT/tools/rntcl
+++ b/NT/tools/rntcl
@@ -40,6 +40,7 @@ string remove_ext(string file)
 
 int main(int argc, string *argv)
 {
+  string *ldopts=({});
   string *cflags=({
     "-Zm300",
     "-F8388608",
@@ -78,6 +79,7 @@ int main(int argc, string *argv)
       {
 	case "verbose":
 	  verbose++;
+	  ldopts+=({"-VERBOSE:lib"});
 	  break;
 
 	case "export": // fixme
@@ -229,15 +231,26 @@ int main(int argc, string *argv)
     case "dll":
       if(debug)
       {
-	cmd+=({
-	  "-link",
+	array libs=({"libc.lib","libcd.lib",
+		     "libcmt.lib","libcmtd.lib",
+		     "msvcrt.lib","msvcrtd.lib"});
+
+	string lib=(debug?"libcmtd.lib":"libcmt.lib");
+	libs-=({ lib });
+	for(int e=0;e<sizeof(libs);e++)
+	  ldopts+=({"-nodefaultlib:"+libs[e]});
+
+	
+	cmd+=({"-link",
 //	  "-PDB:NONE",
 	  "-DEBUGTYPE:BOTH",
 	  "-DEBUG",
-	  });
+	  })
+	  +ldopts;
       }
   }
 
+
   int ret;
   if(verbose && target!="-")
     ret=do_cmd(cmd);