diff --git a/libjava/testsuite/ChangeLog b/libjava/testsuite/ChangeLog
index 47e493d2c00cc81660c52153cfc9f31c2019cba0..d7fe22c39ddc6abd8f0d4713b57aacadf42b85eb 100644
--- a/libjava/testsuite/ChangeLog
+++ b/libjava/testsuite/ChangeLog
@@ -1,3 +1,8 @@
+1999-06-25  Tom Tromey  <tromey@cygnus.com>
+
+	* lib/libjava.exp (test_libjava_from_javac): Prepend `$objdir/' to
+	class file names.
+
 1999-06-24  Tom Tromey  <tromey@cygnus.com>
 
 	* lib/libjava.exp (libjava_arguments): If `libtool' not found in
diff --git a/libjava/testsuite/lib/libjava.exp b/libjava/testsuite/lib/libjava.exp
index 78818fc37158af811fc0eb73214a374cde853d28..88380d14b741cae9a94117eeebe2386a61815c46 100644
--- a/libjava/testsuite/lib/libjava.exp
+++ b/libjava/testsuite/lib/libjava.exp
@@ -366,10 +366,13 @@ proc test_libjava_from_javac { options srcfile compile_args inpfile resultfile e
     # nothing if the file contains an interface and not a class.  I
     # believe this is a jv-scan bug.
     if {$class_out == ""} then {
-	set class_files [file rootname [file tail $srcfile]].class
+	set class_files $objdir/[file rootname [file tail $srcfile]].class
     } else {
 	# Turn "a b" into "a.class b.class".
-	set class_files [join [split [string trim $class_out]] ".class "].class
+	set class_files {}
+        foreach file [split [string trim $class_out]] {
+	    lappend class_out $objdir/$file.class
+	}
     }
 
     # Usually it is an error for a test program not to have a `main'