distclean</command> before reconfiguring and
rebuilding. Without this, your changes in configuration choices
might not propagate everywhere they need to.
</para>
</sect2>
<sect2 id="configure-options">
<title><filename>configure</filename> Options</title>
<indexterm zone="configure-options">
<primary>configure options</primary>
</indexterm>
<para>
<command>configure</command>'s command line options are explained below.
This list is not exhaustive (use <literal>./configure --help</literal>
to get one that is). The options not covered here are meant for
advanced use-cases such as cross-compilation, and are documented in
the standard Autoconf documentation.
</para>
<sect3 id="configure-options-locations">
<title>Installation Locations</title>
<para>
These options control where <literal>make install</literal> will put
the files. The <option>--prefix</option> option is sufficient for
most cases. If you have special needs, you can customize the
installation subdirectories with the other options described in this
section. Beware however that changing the relative locations of the
different subdirectories may render the installation non-relocatable,
meaning you won't be able to move it after installation.
(The <literal>man</literal> and <literal>doc</literal> locations are
not affected by this restriction.) For relocatable installs, you
might want to use the <literal>--disable-rpath</literal> option
described later.
</para>
<variablelist>
<varlistentry id="configure-option-prefix">
<term><option>--prefix=<replaceable>PREFIX</replaceable></option></term>
<listitem>
<para>
Install all files under the directory <replaceable>PREFIX</replaceable>
instead of <filename>/usr/local/pgsql</filename>. The actual
files will be installed into various subdirectories; no files
will ever be installed directly into the
<replaceable>PREFIX</replaceable> directory.
</para>
</listitem>
</varlistentry>
<varlistentry id="configure-option-exec-prefix">
<term><option>--exec-prefix=<replaceable>EXEC-PREFIX</replaceable></option></term>
<listitem>
<para>
You can install architecture-dependent files under a
different prefix, <replaceable>EXEC-PREFIX</replaceable>, than what
<replaceable>PREFIX</replaceable> was set to. This can be useful to
share architecture-independent files between hosts. If you
omit this, then <replaceable>EXEC-PREFIX</replaceable> is set equal to
<replaceable>PREFIX</replaceable> and both architecture-dependent and
independent files will be installed under the same tree,
which is probably what you want.
</para>
</listitem>
</varlistentry>
<varlistentry id="configure-option-bindir">
<term><option>--bindir=<replaceable>DIRECTORY</replaceable></option></term>
<listitem>
<para>
Specifies the directory for executable programs. The default
is <filename><replaceable>EXEC-PREFIX</replaceable>/bin</filename>, which
normally means <filename>/usr/local/pgsql/bin</filename>.
</para>
</listitem>
</varlistentry>
<varlistentry id="configure-option-sysconfdir">
<term><option>--sysconfdir=<replaceable>DIRECTORY</replaceable></option></term>
<listitem>
<para>
Sets the directory for various configuration files,
<filename><replaceable>PREFIX</replaceable>/etc</filename> by default.
</para>
</listitem>
</varlistentry>
<varlistentry id="configure-option-libdir">
<term><option>--libdir=<replaceable>DIRECTORY</replaceable></option></term>
<listitem>
<para>
Sets the location to install libraries and dynamically loadable