diff -ruN autopsy-1.75-old/base/autopsy.base autopsy-1.75/base/autopsy.base
--- autopsy-1.75-old/base/autopsy.base	2003-11-15 18:24:50.000000000 +0100
+++ autopsy-1.75/base/autopsy.base	2003-11-28 20:03:24.000000000 +0100
@@ -643,8 +643,8 @@
 		print "ERROR: Sleuth Kit fsstat executable missing\n";
 		exit (1);
 	}
-	unless (-x "${TASKDIR}md5") {
-		print "ERROR: Sleuth Kit md5 executable missing\n";
+	unless (-x "$MD5_EXE") {
+		print "ERROR: md5 executable missing\n";
 		exit (1);
 	}
 	unless (-x "${TASKDIR}sorter") {
diff -ruN autopsy-1.75-old/base/autopsyfunc.pm.base autopsy-1.75/base/autopsyfunc.pm.base
--- autopsy-1.75-old/base/autopsyfunc.pm.base	2003-11-15 20:56:09.000000000 +0100
+++ autopsy-1.75/base/autopsyfunc.pm.base	2003-11-28 20:06:04.000000000 +0100
@@ -77,7 +77,7 @@
 
 # import variables from conf.pl
 use vars '$PROGNAME', '$TASKDIR', '$LOCKDIR';
-use vars '$VER', '$GREP_EXE', '$STRINGS_EXE';
+use vars '$VER', '$GREP_EXE', '$STRINGS_EXE', '$MD5_EXE';
 use vars '$SANITIZE_TAG';
 use vars '$AUT_HOME_PAGE', '$MD5_FILE';
 use vars '$USE_NOTES', '$USE_LOG';
@@ -3737,7 +3737,7 @@
 
 	local *OUT;    
 	exec_pipe(*OUT, 
-	  "'${TASKDIR}icat' -f $ftype -H '$img' $inode | '${TASKDIR}md5'");
+	  "'${TASKDIR}icat' -f $ftype -H '$img' $inode | '${MD5_EXE}'");
 	my $md5 = <OUT>;
 	close (OUT);
 
@@ -3749,7 +3749,7 @@
 
 	if ($sort == $FIL_SORT_STR) {
 		exec_pipe(*OUT, 
-		  "'${TASKDIR}icat' -f $ftype -H '$img' $inode | '$STRINGS_EXE' -a | '${TASKDIR}md5'");
+		  "'${TASKDIR}icat' -f $ftype -H '$img' $inode | '$STRINGS_EXE' -a | '${MD5_EXE}'");
 		$md5 = <OUT>;
 		close (OUT);
 
@@ -3842,7 +3842,7 @@
 
 			local *OUT_MD5;
 			exec_pipe(*OUT_MD5, 
-			  "'${TASKDIR}icat' -f $ftype '$img' $in | '${TASKDIR}md5'");
+			  "'${TASKDIR}icat' -f $ftype '$img' $in | '${MD5_EXE}'");
 			my $md5out = <OUT_MD5>;
 
 			$md5out = "Error getting MD5" 
@@ -4369,7 +4369,7 @@
 	}
 
 
-	exec_pipe(*OUT, "'${TASKDIR}dcat' -f $ftype '$img' $block $len_str | '${TASKDIR}md5'");
+	exec_pipe(*OUT, "'${TASKDIR}dcat' -f $ftype '$img' $block $len_str | '${MD5_EXE}'");
 	my $md5 = <OUT>;
 	close(OUT);
 
@@ -4380,11 +4380,11 @@
 	print "MD5 of raw $addr_unit{$ftype}: $md5\n";
 
 	if ($sort == $BLK_SORT_HEX) {
-		exec_pipe(*OUT, "'${TASKDIR}dcat' -f $ftype -h '$img' $block $len_str | '${TASKDIR}md5'");
+		exec_pipe(*OUT, "'${TASKDIR}dcat' -f $ftype -h '$img' $block $len_str | '${MD5_EXE}'");
 	} elsif ($sort == $BLK_SORT_ASC) {
-		exec_pipe(*OUT, "'${TASKDIR}dcat' -f $ftype -a '$img' $block $len_str | '${TASKDIR}md5'");
+		exec_pipe(*OUT, "'${TASKDIR}dcat' -f $ftype -a '$img' $block $len_str | '${MD5_EXE}'");
 	} elsif ($sort == $BLK_SORT_STR) {
-		exec_pipe(*OUT, "'${TASKDIR}dcat' -f $ftype '$img' $block $len_str | '$STRINGS_EXE' -a | '${TASKDIR}md5'");
+		exec_pipe(*OUT, "'${TASKDIR}dcat' -f $ftype '$img' $block $len_str | '$STRINGS_EXE' -a | '${MD5_EXE}'");
 	}
 
 	$md5 = <OUT>;
@@ -4667,7 +4667,7 @@
 
 	# MD5 Value
 	exec_pipe(*OUT, 
-	  "'${TASKDIR}icat' -f $ftype '$img' $inode | '${TASKDIR}md5'");
+	  "'${TASKDIR}icat' -f $ftype '$img' $inode | '${MD5_EXE}'");
 	my $md5out = <OUT>;
 	close (OUT);
 
@@ -4868,7 +4868,7 @@
 	close(OUT);
 
 	
-	exec_pipe(*OUT, "'${TASKDIR}istat' -f $ftype -z '$tz' -s $ts '$img' $inode | '${TASKDIR}md5'");
+	exec_pipe(*OUT, "'${TASKDIR}istat' -f $ftype -z '$tz' -s $ts '$img' $inode | '${MD5_EXE}'");
 	my $md5 = <OUT>;
 	close (OUT);
 
@@ -6162,7 +6162,7 @@
 
 	alarm(5);
 	local *OUT;
-    exec_pipe (*OUT, "'${TASKDIR}md5' '$img'");
+    exec_pipe (*OUT, "'${MD5_EXE}' '$img'");
 	my $out = <OUT>;
 	close (OUT);
 
diff -ruN autopsy-1.75-old/configure autopsy-1.75/configure
--- autopsy-1.75-old/configure	2003-11-28 19:43:00.000000000 +0100
+++ autopsy-1.75/configure	2003-11-28 19:45:46.000000000 +0100
@@ -287,6 +287,37 @@
   done
 fi
 
+#
+# MD5
+#
+md5_loc=nope
+for d in $dirs 
+  do if (test -x ${d}md5sum) then
+    echo \$MD5_EXE = \'${d}md5sum\'\; >> $conf; 
+    echo "md5 found: ${d}md5sum";
+	md5_loc=${d}md5sum;
+    found=1; 
+    break; 
+  fi;
+done
+
+# Prompt if not found
+if (test "$md5_loc" = "nope") then
+  echo 'ERROR: md5 utility not found';
+  echo 'Enter location:';
+  while (test 1 -eq 1) 
+    do md5_loc="/usr/bin/md5sum";
+    if (test -x "$md5_loc") then
+	  echo \$MD5_EXE = \'$md5_loc\'\; >> $conf; 
+      echo "md5 found: $md5_loc";
+      break;
+    else
+      echo 'md5 was not found (try again):';
+      exit 1;
+    fi;
+  done
+fi
+
 # The Mac OS X strings does not support the GNU flags
 echo -n '  Testing decimal offset flag of strings: ';
 if (test -z "`echo 1234567890 | $str_loc -t d 2> /dev/null`") then
