 
     (let ((log-warning-minimum-level 'error))
       ;; Don't show spurious warning message
-      (sw:common-lisp sw:common-lisp-buffer-name
-		      sw:common-lisp-directory
-		      sw:common-lisp-image-name
-		      sw:common-lisp-image-arguments
-		      sw:common-lisp-host
-		      sw:common-lisp-image-file
-		      ))
+      (if sw:image-is-executable
+	  (sw:common-lisp sw:common-lisp-buffer-name
+			  sw:common-lisp-directory
+			  sw:common-lisp-image-file
+			  sw:common-lisp-image-arguments
+			  sw:common-lisp-host
+			  nil)
+	(sw:common-lisp sw:common-lisp-buffer-name
+			sw:common-lisp-directory
+			sw:common-lisp-image-name
+			sw:common-lisp-image-arguments
+			sw:common-lisp-host
+			sw:common-lisp-image-file
+			)))
     (goto-char (point-max))
     ))

    (if *windows-system-p* '("+cm") nil)) ; see note above

  (let ((log-warning-minimum-level 'error))
    (sw:common-lisp sw:common-lisp-buffer-name
		    sw:common-lisp-directory
		    sw:common-lisp-image-name
		    sw:common-lisp-image-arguments
		    sw:common-lisp-host
		    sw:common-lisp-image-file)))


(defun run-plain-lisp (&optional sleep)

			  sw:common-lisp-image-arguments
			  sw:common-lisp-host
			  sw:common-lisp-image-file)))
      (wait-for-prompt 0.1)
      (sw:eval-in-lisp-no-value
       (format "(cl:namestring (specware::change-directory %S))" sw:common-lisp-directory))
