@cindex trees, source vs.@: build
The GNU Build System distinguishes two trees: the source tree, and
-the build tree.
+the build tree. These are two directories that may be the same, or
+different.
-The source tree is rooted in the directory containing
-@file{configure}. It contains all the sources files (those that are
+The source tree is rooted in the directory containing the
+@file{configure} script. It contains all the source files (those that are
distributed), and may be arranged using several subdirectories.
-The build tree is rooted in the directory in which @file{configure}
+The build tree is rooted in the current directory at the time @file{configure}
was run, and is populated with all object files, programs, libraries,
and other derived files built from the sources (and hence not
distributed). The build tree usually has the same subdirectory layout
A common request from users is that they want to confine all derived
files to a single directory, to keep their source directories
-uncluttered. Here is how we could run @file{configure} to build
-everything in a subdirectory called @file{build/}.
+uncluttered. Here is how we could run @file{configure} to create
+everything in a build tree (that is, subdirectory) called @file{build/}.
@example
~ % @kbd{tar zxf ~/amhello-1.0.tar.gz}