Index: toltcl/CMakeLists.txt
===================================================================
--- toltcl/CMakeLists.txt	(revision 8c5fa5390ec3c965eb09888a5ecd7f7aeb6ae763)
+++ toltcl/CMakeLists.txt	(revision 41890bbbdf6ad7e8a92e672bfa80b90a730a5acb)
@@ -55,5 +55,7 @@
   message( STATUS ${TCL_INCLUDE_PATH} )
   message( STATUS ${TCL_LIBRARY_PATH} )
-  get_filename_component( CMAKE_INSTALL_PREFIX ${TCL_LIBRARY_PATH} PATH )
+  if ( NOT CMAKE_INSTALL_PREFIX )
+    get_filename_component( CMAKE_INSTALL_PREFIX ${TCL_LIBRARY_PATH} PATH )
+  endif( )
   message( STATUS "Using CMAKE_INSTALL_PREFIX = ${CMAKE_INSTALL_PREFIX}" )
 else( TCL_FOUND )
Index: toltcl/generic/CMakeLists.txt
===================================================================
--- toltcl/generic/CMakeLists.txt	(revision 8c5fa5390ec3c965eb09888a5ecd7f7aeb6ae763)
+++ toltcl/generic/CMakeLists.txt	(revision 41890bbbdf6ad7e8a92e672bfa80b90a730a5acb)
@@ -32,4 +32,8 @@
   toltableset.cpp toltime.cpp
 )
+
+set_target_properties( toltcl PROPERTIES OUTPUT_NAME 
+  toltcl${TOLTCL_VERSION_MAJOR}.${TOLTCL_VERSION_MINOR} )
+
 set_target_properties( toltcl PROPERTIES COMPILE_FLAGS "-DBUILD_TOLTCL -DUSE_TCL_STUBS")
 
Index: toltcl/generic/tolsh.c
===================================================================
--- toltcl/generic/tolsh.c	(revision 8c5fa5390ec3c965eb09888a5ecd7f7aeb6ae763)
+++ toltcl/generic/tolsh.c	(revision 41890bbbdf6ad7e8a92e672bfa80b90a730a5acb)
@@ -1,4 +1,25 @@
 #include <tcl.h>
 #include "toltcl.h"
+
+static int g_argc = 0;
+static char **g_argv = NULL;
+
+static
+void SetupArgv( Tcl_Interp *interp )
+{
+  Tcl_Obj *argvPtr = Tcl_NewListObj(0, NULL);
+  int i;
+  for( i = 1; i < g_argc; i++ )
+    {
+      Tcl_DString ds;
+      Tcl_ExternalToUtfDString(NULL, g_argv[i], -1, &ds);
+      Tcl_ListObjAppendElement(NULL, argvPtr, 
+			       Tcl_NewStringObj(Tcl_DStringValue(&ds),
+						Tcl_DStringLength(&ds)));
+      Tcl_DStringFree(&ds);
+    }
+    Tcl_SetVar2Ex(interp, "argv", NULL, argvPtr, TCL_GLOBAL_ONLY);
+    Tcl_SetVar2Ex(interp, "argc", NULL, Tcl_NewIntObj(g_argc-1), TCL_GLOBAL_ONLY);
+}
 
 int AppInit(Tcl_Interp *interp)
@@ -8,4 +29,5 @@
     return TCL_ERROR;
     }
+  SetupArgv( interp );
   Tcl_PkgRequire( interp, "TolshApp", TOLTCL_VERSION, 1);
   return TCL_OK;
@@ -14,5 +36,7 @@
 int main(int argc, char *argv[])
 {
-  Tcl_Main( argc, argv, AppInit );
+  g_argc = argc;
+  g_argv = argv;
+  Tcl_Main( 1, argv, AppInit );
   return 0;
 }
Index: toltcl/library/tolsh.tcl
===================================================================
--- toltcl/library/tolsh.tcl	(revision 8c5fa5390ec3c965eb09888a5ecd7f7aeb6ae763)
+++ toltcl/library/tolsh.tcl	(revision 41890bbbdf6ad7e8a92e672bfa80b90a730a5acb)
@@ -592,4 +592,4 @@
 
 puts "voy ::tolsh::run $argv"
-::tolsh::run $argv
+::tolsh::run $::argv
 exit
