OSDN Git Service

Back out Win32 changes until Tom is done.
authorBruce Momjian <bruce@momjian.us>
Fri, 24 Dec 2004 18:37:26 +0000 (18:37 +0000)
committerBruce Momjian <bruce@momjian.us>
Fri, 24 Dec 2004 18:37:26 +0000 (18:37 +0000)
doc/src/sgml/install-win32.sgml
doc/src/sgml/installation.sgml

index 4afff62..acbfa2b 100644 (file)
@@ -1,9 +1,9 @@
 <!--
-$PostgreSQL: pgsql/doc/src/sgml/install-win32.sgml,v 1.19 2004/12/24 18:32:50 momjian Exp $
+$PostgreSQL: pgsql/doc/src/sgml/install-win32.sgml,v 1.20 2004/12/24 18:37:26 momjian Exp $
 -->
 
 <chapter id="install-win32">
- <title>Client-Only Installation on <productname>Windows</productname></title>
+ <title>Installation on <productname>Windows</productname></title>
 
  <indexterm>
   <primary>installation</primary>
@@ -12,9 +12,8 @@ $PostgreSQL: pgsql/doc/src/sgml/install-win32.sgml,v 1.19 2004/12/24 18:32:50 mo
 
  <para>
   Although <productname>PostgreSQL</productname> is written for
-  Unix-like operating systems and can be built using
-  <productname>MinGW</productname> and
-  <productname>Cygwin</productname>, the C client library
+  Unix-like operating systems and compiles under
+  <productname>MinGW</productname>, the C client library
   (<application>libpq</application>) and the interactive terminal
   (<application>psql</application>) can be compiled using other Windows
   tool sets. Makefiles are included in the source distribution for
index 7149198..efab42f 100644 (file)
-<!-- $PostgreSQL: pgsql/doc/src/sgml/installation.sgml,v 1.217 2004/12/24 18:32:50 momjian Exp $ -->\r
-\r
-<chapter id="installation">\r
- <title><![%standalone-include[<productname>PostgreSQL</>]]>\r
-  Installation Instructions</title>\r
-\r
- <indexterm zone="installation">\r
-  <primary>installation</primary>\r
- </indexterm>\r
-\r
- <para>\r
-  This <![%standalone-include;[document]]>\r
-  <![%standalone-ignore;[chapter]]> describes the installation of\r
-  <productname>PostgreSQL</productname> from the source code\r
-  distribution.\r
- </para>\r
-\r
- <sect1 id="install-short">\r
-  <title>Short Version</title>\r
-\r
-  <para>\r
-<synopsis>\r
-./configure\r
-gmake\r
-su\r
-gmake install\r
-adduser postgres\r
-mkdir /usr/local/pgsql/data\r
-chown postgres /usr/local/pgsql/data\r
-su - postgres\r
-/usr/local/pgsql/bin/initdb -D /usr/local/pgsql/data\r
-/usr/local/pgsql/bin/postmaster -D /usr/local/pgsql/data &gt;logfile 2&gt;&amp;1 &amp;\r
-/usr/local/pgsql/bin/createdb test\r
-/usr/local/pgsql/bin/psql test\r
-</synopsis>\r
-   The long version is the rest of this\r
-   <![%standalone-include;[document.]]>\r
-   <![%standalone-ignore;[chapter.]]>\r
-  </para>\r
- </sect1>\r
-\r
-\r
- <sect1 id="install-requirements">\r
-  <title>Requirements</title>\r
-\r
-  <para>\r
-   In general, a modern Unix-compatible platform should be able to run\r
-   <productname>PostgreSQL</>.\r
-    The platforms that had received specific testing at the\r
-   time of release are listed in <xref linkend="supported-platforms">\r
-   below. In the <filename>doc</> subdirectory of the distribution\r
-   there are several platform-specific <acronym>FAQ</> documents you\r
-   might wish to consult if you are having trouble.\r
-  </para>\r
-\r
-  <para>\r
-   The following software packages are required for building\r
-   <productname>PostgreSQL</>:\r
-\r
-   <itemizedlist>\r
-    <listitem>\r
-     <para>\r
-      <indexterm>\r
-       <primary>make</primary>\r
-      </indexterm>\r
-\r
-      <acronym>GNU</> <application>make</> is required; other\r
-      <application>make</> programs will <emphasis>not</> work.\r
-      <acronym>GNU</> <application>make</> is often installed under\r
-      the name <filename>gmake</filename>; this document will always\r
-      refer to it by that name. (On some systems\r
-      <acronym>GNU</acronym> <application>make</> is the default tool with the name\r
-      <filename>make</>.) To test for <acronym>GNU</acronym>\r
-      <application>make</application> enter\r
-<screen>\r
-<userinput>gmake --version</userinput>\r
-</screen>\r
-      It is recommended to use version 3.76.1 or later.\r
-     </para>\r
-    </listitem>\r
-\r
-    <listitem>\r
-     <para>\r
-      You need an <acronym>ISO</>/<acronym>ANSI</> C compiler. Recent\r
-      versions of <productname>GCC</> are recommendable, but\r
-      <productname>PostgreSQL</> is known to build with a wide variety\r
-      of compilers from different vendors.\r
-     </para>\r
-    </listitem>\r
-\r
-    <listitem>\r
-     <para>\r
-      <application>gzip</> is needed to unpack the distribution in the\r
-      first place.<![%standalone-include;[  If you are reading this, you probably already got\r
-      past that hurdle.]]>\r
-     </para>\r
-    </listitem>\r
-\r
-    <listitem>\r
-     <para>\r
-      <indexterm>\r
-       <primary>readline</primary>\r
-      </indexterm>\r
-\r
-      The <acronym>GNU</> <productname>Readline</> library (for\r
-      comfortable line editing and command history retrieval) will be\r
-      used by default.  If you don't want to use it then you must\r
-      specify the <option>--without-readline</option> option for\r
-      <filename>configure</>.  (On <productname>NetBSD</productname>,\r
-      the <filename>libedit</filename> library is\r
-      <productname>Readline</productname>-compatible and is used if\r
-      <filename>libreadline</filename> is not found.)\r
-     </para>\r
-    </listitem>\r
-\r
-    <listitem>\r
-     <para>\r
-      <indexterm>\r
-       <primary>installation</primary>\r
-       <secondary>on Windows</secondary>\r
-      </indexterm>\r
-\r
-      To build on <productname>NT</>-based versions of\r
-      <productname>Windows</> like Windows XP and 2003 see\r
-      <filename>doc/FAQ_MINGW</>. For earlier <productname>Windows</>\r
-      releases see <filename>doc/FAQ_CYGWIN</>.\r
-\r
-      To build <productname>Windows</> client-only interfaces using\r
-      tools like <productname>Visual C++</> and <productname>Borland\r
-      C++</> see\r
-      <![%standalone-include[the documentation chapter "Client-Only\r
-      Installation on Windows"]]> <![%standalone-ignore[<xref\r
-      linkend="install-win32">]]>.\r
-     </para>\r
-    </listitem>\r
-   </itemizedlist>\r
-  </para>\r
-\r
-  <para>\r
-   The following packages are optional.  They are not required in the\r
-   default configuration, but they are needed when certain build\r
-   options are enabled, as explained below.\r
-\r
-   <itemizedlist>\r
-    <listitem>\r
-     <para>\r
-      To build the server programming language\r
-      <application>PL/Perl</application> you need a full\r
-      <productname>Perl</productname> installation, including the\r
-      <filename>libperl</filename> library and the header files.\r
-      Since <application>PL/Perl</application> will be a shared\r
-      library, the <indexterm><primary>libperl</primary></indexterm>\r
-      <filename>libperl</filename> library must be a shared library\r
-      also on most platforms.  This appears to be the default in\r
-      recent <productname>Perl</productname> versions, but it was not\r
-      in earlier versions, and in general it is the choice of whomever\r
-      installed Perl at your site.\r
-     </para>\r
-\r
-     <para>\r
-      If you don't have the shared library but you need one, a message\r
-      like this will appear during the build to point out this fact:\r
-<screen>\r
-*** Cannot build PL/Perl because libperl is not a shared library.\r
-*** You might have to rebuild your Perl installation.  Refer to\r
-*** the documentation for details.\r
-</screen>\r
-      (If you don't follow the on-screen output you will merely notice\r
-      that the <application>PL/Perl</application> library object,\r
-      <filename>plperl.so</filename> or similar, will not be\r
-      installed.)  If you see this, you will have to rebuild and\r
-      install <productname>Perl</productname> manually to be able to\r
-      build <application>PL/Perl</application>.  During the\r
-      configuration process for <productname>Perl</productname>,\r
-      request a shared library.\r
-     </para>\r
-    </listitem>\r
-\r
-    <listitem>\r
-     <para>\r
-      To build the <application>PL/Python</> server programming\r
-      language, you need a <productname>Python</productname>\r
-      installation with the header files and the <application>distutils</application> module.\r
-      The <application>distutils</application> module is included by default with\r
-      <productname>Python</productname> 1.6 and later; users of\r
-      earlier versions of <productname>Python</productname> will need\r
-      to install it.\r
-     </para>\r
-\r
-     <para>\r
-      Since <application>PL/Python</application> will be a shared\r
-      library, the <indexterm><primary>libpython</primary></indexterm>\r
-      <filename>libpython</filename> library must be a shared library\r
-      also on most platforms.  This is not the case in a default\r
-      <productname>Python</productname> installation.  If after\r
-      building and installing you have a file called\r
-      <filename>plpython.so</filename> (possibly a different\r
-      extension), then everything went well.  Otherwise you should\r
-      have seen a notice like this flying by:\r
-<screen>\r
-*** Cannot build PL/Python because libpython is not a shared library.\r
-*** You might have to rebuild your Python installation.  Refer to\r
-*** the documentation for details.\r
-</screen>\r
-      That means you have to rebuild (part of) your\r
-      <productname>Python</productname> installation to supply this\r
-      shared library.\r
-     </para>\r
-\r
-     <para>\r
-      If you have problems, run <productname>Python</> 2.3 or later's\r
-      configure using the <literal>--enable-shared</> flag.  On some\r
-      operating systems you don't have to build a shared library, but\r
-      you will have to convince the <productname>PostgreSQL</> build\r
-      system of this.  Consult the <filename>Makefile</filename> in\r
-      the <filename>src/pl/plpython</filename> directory for details.\r
-     </para>\r
-    </listitem>\r
-\r
-    <listitem>\r
-     <para>\r
-      If you want to build the <application>PL/Tcl</application>\r
-      procedural language, you of course need a Tcl installation.\r
-     </para>\r
-    </listitem>\r
-\r
-    <listitem>\r
-     <para>\r
-      To enable Native Language Support (<acronym>NLS</acronym>), that\r
-      is, the ability to display a program's messages in a language\r
-      other than English, you need an implementation of the\r
-      <application>Gettext</> <acronym>API</acronym>.  Some operating\r
-      systems have this built-in (e.g., <systemitem\r
-      class="osname">Linux</>, <systemitem class="osname">NetBSD</>,\r
-      <systemitem class="osname">Solaris</>), for other systems you\r
-      can download an add-on package from here: <ulink\r
-      url="http://developer.postgresql.org/~petere/bsd-gettext/" ></ulink>.\r
-      If you are using the <application>Gettext</> implementation in\r
-      the <acronym>GNU</acronym> C library then you will additionally\r
-      need the <productname>GNU Gettext</productname> package for some\r
-      utility programs.  For any of the other implementations you will\r
-      not need it.\r
-     </para>\r
-    </listitem>\r
-\r
-    <listitem>\r
-     <para>\r
-      <application>Kerberos</>, <productname>OpenSSL</>, or <application>PAM</>,\r
-      if you want to support authentication using these services.\r
-     </para>\r
-    </listitem>\r
-   </itemizedlist>\r
-  </para>\r
-\r
-  <para>\r
-   If you are building from a <acronym>CVS</acronym> tree instead of\r
-   using a released source package, or if you want to do development,\r
-   you also need the following packages:\r
-\r
-   <itemizedlist>\r
-    <listitem>\r
-     <para>\r
-      <indexterm>\r
-       <primary>flex</primary>\r
-      </indexterm>\r
-      <indexterm>\r
-       <primary>bison</primary>\r
-      </indexterm>\r
-      <indexterm>\r
-       <primary>yacc</primary>\r
-      </indexterm>\r
-\r
-      <application>Flex</> and <application>Bison</>\r
-      are needed to build a CVS checkout or if you changed the actual\r
-      scanner and parser definition files. If you need them, be sure\r
-      to get <application>Flex</> 2.5.4 or later and\r
-      <application>Bison</> 1.875 or later. Other <application>yacc</>\r
-      programs can sometimes be used, but doing so requires extra\r
-      effort and is not recommended. Other <application>lex</>\r
-      programs will definitely not work.\r
-     </para>\r
-    </listitem>\r
-   </itemizedlist>\r
-  </para>\r
-\r
-  <para>\r
-   If you need to get a <acronym>GNU</acronym> package, you can find\r
-   it at your local <acronym>GNU</acronym> mirror site (see <ulink\r
-   url="http://www.gnu.org/order/ftp.html"></>\r
-   for a list) or at <ulink\r
-   url="ftp://ftp.gnu.org/gnu/"></ulink>.\r
-  </para>\r
-\r
-  <para>\r
-   Also check that you have sufficient disk space. You will need about\r
-   65 MB for the source tree during compilation and about 15 MB for\r
-   the installation directory. An empty database cluster takes about\r
-   25 MB, databases take about five times the amount of space that a\r
-   flat text file with the same data would take. If you are going to\r
-   run the regression tests you will temporarily need up to an extra\r
-   90 MB. Use the <command>df</command> command to check for disk\r
-   space.\r
-  </para>\r
- </sect1>\r
-\r
-<![%standalone-ignore;[\r
- <sect1 id="install-getsource">\r
-  <title>Getting The Source</title>\r
-\r
-  <para>\r
-   The <productname>PostgreSQL</> &version; sources can be obtained by\r
-   anonymous FTP from <ulink\r
-   url="ftp://ftp.postgresql.org/pub/source/v&version;/postgresql-&version;.tar.gz"></ulink>.\r
-   Use a mirror if possible. After you have obtained the file, unpack it:\r
-<screen>\r
-<userinput>gunzip postgresql-&version;.tar.gz</userinput>\r
-<userinput>tar xf postgresql-&version;.tar</userinput>\r
-</screen>\r
-   This will create a directory\r
-   <filename>postgresql-&version;</filename> under the current directory\r
-   with the <productname>PostgreSQL</> sources.\r
-   Change into that directory for the rest\r
-   of the installation procedure.\r
-  </para>\r
- </sect1>\r
-]]>\r
-\r
- <sect1 id="install-upgrading">\r
-  <title>If You Are Upgrading</title>\r
-\r
-  <indexterm zone="install-upgrading">\r
-   <primary>upgrading</primary>\r
-  </indexterm>\r
-\r
-  <para>\r
-   The internal data storage format changes with new releases of\r
-   <productname>PostgreSQL</>. Therefore, if you are upgrading an\r
-   existing installation that does not have a version number\r
-   <quote>&majorversion;.x</quote>, you must back up and restore your\r
-   data as shown here. These instructions assume that your existing\r
-   installation is under the <filename>/usr/local/pgsql</> directory,\r
-   and that the data area is in <filename>/usr/local/pgsql/data</>.\r
-   Substitute your paths appropriately.\r
-  </para>\r
-\r
-  <procedure>\r
-   <step>\r
-    <para>\r
-     Make sure that your database is not updated during or after the\r
-     backup. This does not affect the integrity of the backup, but the\r
-     changed data would of course not be included. If necessary, edit\r
-     the permissions in the file\r
-     <filename>/usr/local/pgsql/data/pg_hba.conf</> (or equivalent) to\r
-     disallow access from everyone except you.\r
-    </para>\r
-   </step>\r
-\r
-   <step>\r
-    <para>\r
-     <indexterm>\r
-      <primary>pg_dumpall</primary>\r
-      <secondary>use during upgrade</secondary>\r
-     </indexterm>\r
-\r
-     To back up your database installation, type:\r
-<screen>\r
-<userinput>pg_dumpall &gt; <replaceable>outputfile</></userinput>\r
-</screen>\r
-     If you need to preserve OIDs (such as when using them as\r
-     foreign keys), then use the <option>-o</option> option when running\r
-     <application>pg_dumpall</>.\r
-    </para>\r
-\r
-    <para>\r
-     <application>pg_dumpall</application> does not\r
-     save large objects.  Check\r
-     <![%standalone-include[the documentation]]>\r
-     <![%standalone-ignore[<xref linkend="backup-dump-caveats">]]>\r
-     if you need to do this.\r
-    </para>\r
-\r
-    <para>\r
-     To make the backup, you can use the <application>pg_dumpall</application>\r
-     command from the version you are currently running.  For best\r
-     results, however, try to use the <application>pg_dumpall</application>\r
-     command from <productname>PostgreSQL</productname> &version;,\r
-     since this version contains bug fixes and improvements over older\r
-     versions.  While this advice might seem idiosyncratic since you\r
-     haven't installed the new version yet, it is advisable to follow\r
-     it if you plan to install the new version in parallel with the\r
-     old version.  In that case you can complete the installation\r
-     normally and transfer the data later.  This will also decrease\r
-     the downtime.\r
-    </para>\r
-   </step>\r
-\r
-   <step>\r
-    <para>\r
-     If you are installing the new version at the same location as the\r
-     old one then shut down the old server, at the latest before you\r
-     install the new files:\r
-<screen>\r
-<userinput>kill -INT `cat /usr/local/pgsql/data/postmaster.pid | sed 1q`</>\r
-</screen>\r
-     Versions prior to 7.0 do not have this\r
-     <filename>postmaster.pid</> file. If you are using such a version\r
-     you must find out the process ID of the server yourself, for\r
-     example by typing <userinput>ps ax | grep postmaster</>, and\r
-     supply it to the <command>kill</> command.\r
-    </para>\r
-\r
-    <para>\r
-     On systems that have <productname>PostgreSQL</> started at boot time, there is\r
-     probably a start-up file that will accomplish the same thing. For\r
-     example, on a <systemitem class="osname">Red Hat Linux</> system one might find that\r
-<screen>\r
-<userinput>/etc/rc.d/init.d/postgresql stop</userinput>\r
-</screen>\r
-     works.  Another possibility is <userinput>pg_ctl stop</>.\r
-    </para>\r
-   </step>\r
-\r
-   <step>\r
-    <para>\r
-     If you are installing in the same place as the old version then\r
-     it is also a good idea to move the old installation out of the\r
-     way, in case you have trouble and need to revert to it.\r
-     Use a command like this:\r
-<screen>\r
-<userinput>mv /usr/local/pgsql /usr/local/pgsql.old</>\r
-</screen>\r
-    </para>\r
-   </step>\r
-  </procedure>\r
-\r
-  <para>\r
-   After you have installed <productname>PostgreSQL</> &version;, create a new database\r
-   directory and start the new server. Remember that you must execute\r
-   these commands while logged in to the special database user account\r
-   (which you already have if you are upgrading).\r
-<programlisting>\r
-<userinput>/usr/local/pgsql/bin/initdb -D /usr/local/pgsql/data</>\r
-<userinput>/usr/local/pgsql/bin/postmaster -D /usr/local/pgsql/data</>\r
-</programlisting>\r
-   Finally, restore your data with\r
-<screen>\r
-<userinput>/usr/local/pgsql/bin/psql -d template1 -f <replaceable>outputfile</></userinput>\r
-</screen>\r
-   using the <emphasis>new</> <application>psql</>.\r
-  </para>\r
-\r
-  <para>\r
-   These topics are discussed at length in <![%standalone-include[the\r
-   documentation,]]> <![%standalone-ignore[<xref\r
-   linkend="migration">,]]> which you are encouraged to read in any\r
-   case.\r
-  </para>\r
- </sect1>\r
-\r
-\r
- <sect1 id="install-procedure">\r
-  <title>Installation Procedure</title>\r
-\r
-  <procedure>\r
-\r
-  <step id="configure">\r
-   <title>Configuration</>\r
-\r
-   <indexterm zone="configure">\r
-    <primary>configure</primary>\r
-   </indexterm>\r
-\r
-   <para>\r
-    The first step of the installation procedure is to configure the\r
-    source tree for your system and choose the options you would like.\r
-    This is done by running the <filename>configure</> script. For a\r
-    default installation simply enter\r
-<screen>\r
-<userinput>./configure</userinput>\r
-</screen>\r
-    This script will run a number of tests to guess values for various\r
-    system dependent variables and detect some quirks of your\r
-    operating system, and finally will create several files in the\r
-    build tree to record what it found.  (You can also run\r
-    <filename>configure</filename> in a directory outside the source\r
-    tree if you want to keep the build directory separate.)\r
-   </para>\r
-\r
-   <para>\r
-    The default configuration will build the server and utilities, as\r
-    well as all client applications and interfaces that require only a\r
-    C compiler. All files will be installed under\r
-    <filename>/usr/local/pgsql</> by default.\r
-   </para>\r
-\r
-   <para>\r
-    You can customize the build and installation process by supplying one\r
-    or more of the following command line options to\r
-    <filename>configure</filename>:\r
-\r
-     <variablelist>\r
-      <varlistentry>\r
-       <term><option>--prefix=<replaceable>PREFIX</></option></term>\r
-       <listitem>\r
-        <para>\r
-         Install all files under the directory <replaceable>PREFIX</>\r
-         instead of <filename>/usr/local/pgsql</filename>. The actual\r
-         files will be installed into various subdirectories; no files\r
-         will ever be installed directly into the\r
-         <replaceable>PREFIX</> directory.\r
-        </para>\r
-\r
-        <para>\r
-         If you have special needs, you can also customize the\r
-         individual subdirectories with the following options. However,\r
-         if you leave these with their defaults, the installation will be\r
-         relocatable, meaning you can move the directory after\r
-         installation. (The <literal>man</> and <literal>doc</>\r
-         locations are not affected by this.)\r
-        </para>\r
-\r
-        <para>\r
-         For relocatable installs, you might want to use \r
-         <filename>configure</filename>'s <literal>--disable-rpath</>\r
-         option.  Also, you will need to tell the operating system how\r
-         to find the shared libraries.\r
-        </para>\r
-       </listitem>\r
-      </varlistentry>\r
-\r
-      <varlistentry>\r
-       <term><option>--exec-prefix=<replaceable>EXEC-PREFIX</></option></term>\r
-       <listitem>\r
-        <para>\r
-         You can install architecture-dependent files under a\r
-         different prefix, <replaceable>EXEC-PREFIX</>, than what\r
-         <replaceable>PREFIX</> was set to. This can be useful to\r
-         share architecture-independent files between hosts. If you\r
-         omit this, then <replaceable>EXEC-PREFIX</> is set equal to\r
-         <replaceable>PREFIX</> and both architecture-dependent and\r
-         independent files will be installed under the same tree,\r
-         which is probably what you want.\r
-        </para>\r
-       </listitem>\r
-      </varlistentry>\r
-\r
-      <varlistentry>\r
-       <term><option>--bindir=<replaceable>DIRECTORY</></option></term>\r
-       <listitem>\r
-        <para>\r
-         Specifies the directory for executable programs. The default\r
-         is <filename><replaceable>EXEC-PREFIX</>/bin</>, which\r
-         normally means <filename>/usr/local/pgsql/bin</>.\r
-        </para>\r
-       </listitem>\r
-      </varlistentry>\r
-\r
-      <varlistentry>\r
-       <term><option>--datadir=<replaceable>DIRECTORY</></option></term>\r
-       <listitem>\r
-        <para>\r
-         Sets the directory for read-only data files used by the\r
-         installed programs. The default is\r
-         <filename><replaceable>PREFIX</>/share</>. Note that this has\r
-         nothing to do with where your database files will be placed.\r
-        </para>\r
-       </listitem>\r
-      </varlistentry>\r
-\r
-      <varlistentry>\r
-       <term><option>--sysconfdir=<replaceable>DIRECTORY</></option></term>\r
-       <listitem>\r
-        <para>\r
-         The directory for various configuration files,\r
-         <filename><replaceable>PREFIX</>/etc</> by default.\r
-        </para>\r
-       </listitem>\r
-      </varlistentry>\r
-\r
-      <varlistentry>\r
-       <term><option>--libdir=<replaceable>DIRECTORY</></option></term>\r
-       <listitem>\r
-        <para>\r
-         The location to install libraries and dynamically loadable\r
-         modules. The default is\r
-         <filename><replaceable>EXEC-PREFIX</>/lib</>.\r
-        </para>\r
-       </listitem>\r
-      </varlistentry>\r
-\r
-      <varlistentry>\r
-       <term><option>--includedir=<replaceable>DIRECTORY</></option></term>\r
-       <listitem>\r
-        <para>\r
-         The directory for installing C and C++ header files. The\r
-         default is <filename><replaceable>PREFIX</>/include</>.\r
-        </para>\r
-       </listitem>\r
-      </varlistentry>\r
-\r
-      <varlistentry>\r
-       <term><option>--mandir=<replaceable>DIRECTORY</></option></term>\r
-       <listitem>\r
-        <para>\r
-         The man pages that come with <productname>PostgreSQL</> will be installed under\r
-         this directory, in their respective\r
-         <filename>man<replaceable>x</></> subdirectories.\r
-         The default is <filename><replaceable>PREFIX</>/man</>.\r
-        </para>\r
-       </listitem>\r
-      </varlistentry>\r
-\r
-      <varlistentry>\r
-       <term><option>--with-docdir=<replaceable>DIRECTORY</></option></term>\r
-       <term><option>--without-docdir</option></term>\r
-       <listitem>\r
-        <para>\r
-         Documentation files, except <quote>man</> pages, will be\r
-         installed into this directory. The default is\r
-         <filename><replaceable>PREFIX</>/doc</>.  If the option\r
-         <option>--without-docdir</option> is specified, the\r
-         documentation will not be installed by <command>make\r
-         install</command>.  This is intended for packaging scripts\r
-         that have special methods for installing documentation.\r
-        </para>\r
-       </listitem>\r
-      </varlistentry>\r
-     </variablelist>\r
-\r
-     <note>\r
-      <para>\r
-       Care has been taken to make it possible to install\r
-       <productname>PostgreSQL</> into shared installation locations\r
-       (such as <filename>/usr/local/include</filename>) without\r
-       interfering with the namespace of the rest of the system. First,\r
-       the string <quote><literal>/postgresql</literal></quote> is\r
-       automatically appended to <varname>datadir</varname>,\r
-       <varname>sysconfdir</varname>, and <varname>docdir</varname>,\r
-       unless the fully expanded directory name already contains the\r
-       string <quote><literal>postgres</></quote> or\r
-       <quote><literal>pgsql</></quote>. For example, if you choose\r
-       <filename>/usr/local</filename> as prefix, the documentation will\r
-       be installed in <filename>/usr/local/doc/postgresql</filename>,\r
-       but if the prefix is <filename>/opt/postgres</filename>, then it\r
-       will be in <filename>/opt/postgres/doc</filename>. The public C\r
-       header files of the client interfaces are installed into\r
-       <varname>includedir</varname> and are namespace-clean. The\r
-       internal header files and the server header files are installed\r
-       into private directories under <varname>includedir</varname>. See\r
-       the documentation of each interface for information about how to\r
-       get at the its header files. Finally, a private subdirectory will\r
-       also be created, if appropriate, under <varname>libdir</varname>\r
-       for dynamically loadable modules.\r
-      </para>\r
-     </note>\r
-    </para>\r
-\r
-    <para>\r
-     <variablelist>\r
-      <varlistentry>\r
-       <term><option>--with-includes=<replaceable>DIRECTORIES</></option></term>\r
-       <listitem>\r
-        <para>\r
-         <replaceable>DIRECTORIES</> is a colon-separated list of\r
-         directories that will be added to the list the compiler\r
-         searches for header files. If you have optional packages\r
-         (such as GNU <application>Readline</>) installed in a non-standard\r
-         location,\r
-         you have to use this option and probably also the corresponding\r
-         <option>--with-libraries</> option.\r
-        </para>\r
-        <para>\r
-         Example: <literal>--with-includes=/opt/gnu/include:/usr/sup/include</>.\r
-        </para>\r
-       </listitem>\r
-      </varlistentry>\r
-\r
-      <varlistentry>\r
-       <term><option>--with-libraries=<replaceable>DIRECTORIES</></option></term>\r
-       <listitem>\r
-        <para>\r
-         <replaceable>DIRECTORIES</> is a colon-separated list of\r
-         directories to search for libraries. You will probably have\r
-         to use this option (and the corresponding\r
-         <option>--with-includes</> option) if you have packages\r
-         installed in non-standard locations.\r
-        </para>\r
-        <para>\r
-         Example: <literal>--with-libraries=/opt/gnu/lib:/usr/sup/lib</>.\r
-        </para>\r
-       </listitem>\r
-      </varlistentry>\r
-\r
-      <varlistentry>\r
-       <term><option>--enable-nls<optional>=<replaceable>LANGUAGES</replaceable></optional></option></term>\r
-       <listitem>\r
-        <para>\r
-         Enables Native Language Support (<acronym>NLS</acronym>),\r
-         that is, the ability to display a program's messages in a\r
-         language other than English.\r
-         <replaceable>LANGUAGES</replaceable> is a space separated\r
-         list of codes of the languages that you want supported, for\r
-         example <literal>--enable-nls='de fr'</>.  (The intersection\r
-         between your list and the set of actually provided\r
-         translations will be computed automatically.)  If you do not\r
-         specify a list, then all available translations are\r
-         installed.\r
-        </para>\r
-\r
-        <para>\r
-         To use this option, you will need an implementation of the\r
-         <application>Gettext</> API; see above.\r
-        </para>\r
-       </listitem>\r
-      </varlistentry>\r
-\r
-      <varlistentry>\r
-       <term><option>--with-pgport=<replaceable>NUMBER</></option></term>\r
-       <listitem>\r
-        <para>\r
-         Set <replaceable>NUMBER</> as the default port number for\r
-         server and clients. The default is 5432. The port can always\r
-         be changed later on, but if you specify it here then both\r
-         server and clients will have the same default compiled in,\r
-         which can be very convenient.  Usually the only good reason\r
-         to select a non-default value is if you intend to run multiple\r
-         <productname>PostgreSQL</> servers on the same machine.\r
-        </para>\r
-       </listitem>\r
-      </varlistentry>\r
-\r
-      <varlistentry>\r
-       <term><option>--with-perl</option></term>\r
-       <listitem>\r
-        <para>\r
-         Build the <application>PL/Perl</> server-side language.\r
-        </para>\r
-       </listitem>\r
-      </varlistentry>\r
-\r
-      <varlistentry>\r
-       <term><option>--with-python</option></term>\r
-       <listitem>\r
-        <para>\r
-         Build the <application>PL/Python</> server-side language.\r
-        </para>\r
-       </listitem>\r
-      </varlistentry>\r
-\r
-      <varlistentry>\r
-       <term><option>--with-tcl</option></term>\r
-       <listitem>\r
-        <para>\r
-         Build the <application>PL/Tcl</> server-side language.\r
-        </para>\r
-       </listitem>\r
-      </varlistentry>\r
-\r
-      <varlistentry>\r
-       <term><option>--with-tclconfig=<replaceable>DIRECTORY</replaceable></option></term>\r
-       <listitem>\r
-        <para>\r
-         Tcl installs the file <filename>tclConfig.sh</filename>, which\r
-         contains configuration information needed to build modules\r
-         interfacing to Tcl. This file is normally found automatically\r
-         at a well-known location, but if you want to use a different\r
-         version of Tcl you can specify the directory in which to look\r
-         for it.\r
-        </para>\r
-       </listitem>\r
-      </varlistentry>\r
-\r
-      <varlistentry>\r
-       <term><option>--with-krb4</option></term>\r
-       <term><option>--with-krb5</option></term>\r
-       <listitem>\r
-        <para>\r
-         Build with support for Kerberos authentication. You can use\r
-         either Kerberos version 4 or 5, but not both.  On many\r
-         systems, the Kerberos system is not installed in a location\r
-         that is searched by default (e.g., <filename>/usr/include</>,\r
-         <filename>/usr/lib</>), so you must use the options\r
-         <option>--with-includes</> and <option>--with-libraries</> in\r
-         addition to this option.  <filename>configure</> will check\r
-         for the required header files and libraries to make sure that\r
-         your Kerberos installation is sufficient before proceeding.\r
-        </para>\r
-       </listitem>\r
-      </varlistentry>\r
-\r
-      <varlistentry>\r
-       <term><option>--with-krb-srvnam=<replaceable>NAME</></option></term>\r
-       <listitem>\r
-        <para>\r
-         The name of the Kerberos service principal.\r
-         <literal>postgres</literal> is the default. There's probably no\r
-         reason to change this.\r
-        </para>\r
-       </listitem>\r
-      </varlistentry>\r
-\r
-      <varlistentry>\r
-       <indexterm>\r
-        <primary>OpenSSL</primary>\r
-        <seealso>SSL</seealso>\r
-       </indexterm>\r
-\r
-       <term><option>--with-openssl</option></term>\r
-       <listitem>\r
-        <para>\r
-         Build with support for <acronym>SSL</> (encrypted)\r
-         connections. This requires the <productname>OpenSSL</>\r
-         package to be installed.  <filename>configure</> will check\r
-         for the required header files and libraries to make sure that\r
-         your <productname>OpenSSL</> installation is sufficient\r
-         before proceeding.\r
-        </para>\r
-       </listitem>\r
-      </varlistentry>\r
-\r
-      <varlistentry>\r
-       <term><option>--with-pam</option></term>\r
-       <listitem>\r
-        <para>\r
-         Build with <acronym>PAM</><indexterm><primary>PAM</></>\r
-         (Pluggable Authentication Modules) support.\r
-        </para>\r
-       </listitem>\r
-      </varlistentry>\r
-\r
-      <varlistentry>\r
-       <term><option>--without-readline</option></term>\r
-       <listitem>\r
-        <para>\r
-         Prevents the use of the <application>Readline</> library.  This disables\r
-         command-line editing and history in\r
-         <application>psql</application>, so it is not recommended.\r
-        </para>\r
-       </listitem>\r
-      </varlistentry>\r
-\r
-      <varlistentry>\r
-       <term><option>--with-rendezvous</option></term>\r
-       <listitem>\r
-        <para>\r
-         Build with Rendezvous support.\r
-        </para>\r
-       </listitem>\r
-      </varlistentry>\r
-\r
-      <varlistentry>\r
-       <term><option>--disable-spinlocks</option></term>\r
-       <listitem>\r
-        <para>\r
-         Allow the build to succeed even if <productname>PostgreSQL</>\r
-         has no CPU spinlock support for the platform.  The lack of\r
-         spinlock support will result in poor performance; therefore,\r
-         this option should only be used if the build aborts and\r
-         informs you that the platform lacks spinlock support. If this\r
-         option is required to build <productname>PostgreSQL</> on\r
-         your platform, please report the problem to the\r
-         <productname>PostgreSQL</> developers.\r
-        </para>\r
-       </listitem>\r
-      </varlistentry>\r
-\r
-      <varlistentry>\r
-       <term><option>--enable-thread-safety</option></term>\r
-       <listitem>\r
-        <para>\r
-         Make the client libraries thread-safe.  This allows\r
-         concurrent threads in <application>libpq</application> and\r
-         <application>ECPG</application> programs to safely control\r
-         their private connection handles.\r
-        </para>\r
-       </listitem>\r
-      </varlistentry>\r
-\r
-      <varlistentry>\r
-       <term><option>--without-zlib</option></term>\r
-       <listitem>\r
-        <para>\r
-         Prevents the use of the <application>Zlib</> library.  This disables\r
-         compression support in <application>pg_dump</application>.\r
-         This option is only intended for those rare systems where this\r
-         library is not available.\r
-        </para>\r
-       </listitem>\r
-      </varlistentry>\r
-\r
-      <varlistentry>\r
-       <term><option>--enable-debug</option></term>\r
-       <listitem>\r
-        <para>\r
-         Compiles all programs and libraries with debugging symbols.\r
-         This means that you can run the programs through a debugger\r
-         to analyze problems. This enlarges the size of the installed\r
-         executables considerably, and on non-GCC compilers it usually\r
-         also disables compiler optimization, causing slowdowns. However,\r
-         having the symbols available is extremely helpful for dealing\r
-         with any problems that may arise.  Currently, this option is\r
-         recommended for production installations only if you use GCC.\r
-         But you should always have it on if you are doing development work\r
-         or running a beta version.\r
-        </para>\r
-       </listitem>\r
-      </varlistentry>\r
-\r
-      <varlistentry>\r
-       <term><option>--enable-cassert</option></term>\r
-       <listitem>\r
-        <para>\r
-         Enables <firstterm>assertion</> checks in the server, which test for\r
-         many <quote>can't happen</> conditions.  This is invaluable for\r
-         code development purposes, but the tests slow things down a little.\r
-         Also, having the tests turned on won't necessarily enhance the\r
-         stability of your server!  The assertion checks are not categorized\r
-         for severity, and so what might be a relatively harmless bug will\r
-         still lead to server restarts if it triggers an assertion\r
-         failure.  Currently, this option is not recommended for\r
-         production use, but you should have it on for development work\r
-         or when running a beta version.\r
-        </para>\r
-       </listitem>\r
-      </varlistentry>\r
-\r
-      <varlistentry>\r
-       <term><option>--enable-depend</option></term>\r
-       <listitem>\r
-        <para>\r
-         Enables automatic dependency tracking.  With this option, the\r
-         makefiles are set up so that all affected object files will\r
-         be rebuilt when any header file is changed.  This is useful\r
-         if you are doing development work, but is just wasted overhead\r
-         if you intend only to compile once and install.  At present,\r
-         this option will work only if you use GCC.\r
-        </para>\r
-       </listitem>\r
-      </varlistentry>\r
-\r
-     </variablelist>\r
-    </para>\r
-\r
-    <para>\r
-     If you prefer a C compiler different from the one\r
-     <filename>configure</filename> picks then you can set the\r
-     environment variable <envar>CC</> to the program of your choice.\r
-     By default, <filename>configure</filename> will pick\r
-     <filename>gcc</filename> unless this is inappropriate for the\r
-     platform.  Similarly, you can override the default compiler flags\r
-     with the <envar>CFLAGS</envar> variable.\r
-    </para>\r
-\r
-    <para>\r
-     You can specify environment variables on the\r
-     <filename>configure</filename> command line, for example:\r
-<screen>\r
-<userinput>./configure CC=/opt/bin/gcc CFLAGS='-O2 -pipe'</>\r
-</screen>\r
-    </para>\r
-   </step>\r
-\r
-  <step>\r
-   <title>Build</title>\r
-\r
-   <para>\r
-    To start the build, type\r
-<screen>\r
-<userinput>gmake</userinput>\r
-</screen>\r
-    (Remember to use <acronym>GNU</> <application>make</>.) The build\r
-    may take anywhere from 5 minutes to half an hour depending on your\r
-    hardware. The last line displayed should be\r
-<screen>\r
-All of PostgreSQL is successfully made. Ready to install.\r
-</screen>\r
-   </para>\r
-  </step>\r
-\r
-  <step>\r
-   <title>Regression Tests</title>\r
-\r
-   <indexterm>\r
-    <primary>regression test</primary>\r
-   </indexterm>\r
-\r
-   <para>\r
-    If you want to test the newly built server before you install it,\r
-    you can run the regression tests at this point. The regression\r
-    tests are a test suite to verify that <productname>PostgreSQL</>\r
-    runs on your machine in the way the developers expected it\r
-    to. Type\r
-<screen>\r
-<userinput>gmake check</userinput>\r
-</screen>\r
-    (This won't work as root; do it as an unprivileged user.)\r
-    <![%standalone-include[The file\r
-    <filename>src/test/regress/README</> and the\r
-    documentation contain]]>\r
-    <![%standalone-ignore[<xref linkend="regress"> contains]]>\r
-    detailed information about interpreting the test results. You can\r
-    repeat this test at any later time by issuing the same command.\r
-   </para>\r
-  </step>\r
-\r
-  <step id="install">\r
-   <title>Installing The Files</title>\r
-\r
-   <note>\r
-    <para>\r
-     If you are upgrading an existing system and are going to install\r
-     the new files over the old ones, then you should have backed up\r
-     your data and shut down the old server by now, as explained in\r
-     <xref linkend="install-upgrading"> above.\r
-    </para>\r
-   </note>\r
-\r
-   <para>\r
-    To install <productname>PostgreSQL</> enter\r
-<screen>\r
-<userinput>gmake install</userinput>\r
-</screen>\r
-    This will install files into the directories that were specified\r
-    in <xref linkend="configure">. Make sure that you have appropriate\r
-    permissions to write into that area. Normally you need to do this\r
-    step as root. Alternatively, you could create the target\r
-    directories in advance and arrange for appropriate permissions to\r
-    be granted.\r
-   </para>\r
-\r
-   <para>\r
-    You can use <literal>gmake install-strip</literal> instead of\r
-    <literal>gmake install</literal> to strip the executable files and\r
-    libraries as they are installed.  This will save some space.  If\r
-    you built with debugging support, stripping will effectively\r
-    remove the debugging support, so it should only be done if\r
-    debugging is no longer needed.  <literal>install-strip</literal>\r
-    tries to do a reasonable job saving space, but it does not have\r
-    perfect knowledge of how to strip every unneeded byte from an\r
-    executable file, so if you want to save all the disk space you\r
-    possibly can, you will have to do manual work.\r
-   </para>\r
-\r
-   <para>\r
-    The standard installation provides all the header files needed for client\r
-    application development as well as for any server-side program\r
-    development (such as custom functions or data types written in C).\r
-   </para>\r
-\r
-   <formalpara>\r
-    <title>Client-only installation:</title>\r
-    <para>\r
-     If you want to install only the client applications and\r
-     interface libraries, then you can use these commands:\r
-<screen>\r
-<userinput>gmake -C src/bin install</>\r
-<userinput>gmake -C src/include install</>\r
-<userinput>gmake -C src/interfaces install</>\r
-<userinput>gmake -C doc install</>\r
-</screen>\r
-    </para>\r
-   </formalpara>\r
-  </step>\r
-  </procedure>\r
-\r
-  <formalpara>\r
-   <title>Registering <application>eventlog</> on <systemitem \r
-   class="osname">Windows</>:</title>\r
-   <para>\r
-    To register a <systemitem class="osname">Windows</> <application>eventlog</>\r
-    library with the operating system, issue this command after installation:\r
-<screen>\r
-<userinput>regsvr32 <replaceable>pgsql_library_directory</>/pgevent.dll</>\r
-</screen>\r
-    This creates registry entries used by the event viewer.\r
-   </para>\r
-  </formalpara>\r
-\r
-  <formalpara>\r
-   <title>Uninstallation:</title>\r
-   <para>\r
-    To undo the installation use the command <command>gmake\r
-    uninstall</>. However, this will not remove any created directories.\r
-   </para>\r
-  </formalpara>\r
-\r
-  <formalpara>\r
-   <title>Cleaning:</title>\r
-\r
-   <para>\r
-    After the installation you can make room by removing the built\r
-    files from the source tree with the command <command>gmake\r
-    clean</>. This will preserve the files made by the <command>configure</command>\r
-    program, so that you can rebuild everything with <command>gmake</>\r
-    later on. To reset the source tree to the state in which it was\r
-    distributed, use <command>gmake distclean</>. If you are going to\r
-    build for several platforms from the same source tree you must do\r
-    this and re-configure for each build.\r
-   </para>\r
-  </formalpara>\r
-\r
-  <para>\r
-   If you perform a build and then discover that your <command>configure</>\r
-   options were wrong, or if you change anything that <command>configure</>\r
-   investigates (for example, software upgrades), then it's a good\r
-   idea to do <command>gmake distclean</> before reconfiguring and\r
-   rebuilding.  Without this, your changes in configuration choices\r
-   may not propagate everywhere they need to.\r
-  </para>\r
- </sect1>\r
-\r
- <sect1 id="install-post">\r
-  <title>Post-Installation Setup</title>\r
-\r
-  <sect2>\r
-   <title>Shared Libraries</title>\r
-\r
-   <indexterm>\r
-    <primary>shared library</primary>\r
-   </indexterm>\r
-\r
-   <para>\r
-    On some systems that have shared libraries (which most systems do)\r
-    you need to tell your system how to find the newly installed\r
-    shared libraries.  The systems on which this is\r
-    <emphasis>not</emphasis> necessary include <systemitem\r
-    class="osname">BSD/OS</>, <systemitem class="osname">FreeBSD</>,\r
-    <systemitem class="osname">HP-UX</>, <systemitem\r
-    class="osname">IRIX</>, <systemitem class="osname">Linux</>,\r
-    <systemitem class="osname">NetBSD</>, <systemitem\r
-    class="osname">OpenBSD</>, <systemitem class="osname">Tru64\r
-    UNIX</> (formerly <systemitem class="osname">Digital UNIX</>), and\r
-    <systemitem class="osname">Solaris</>.\r
-   </para>\r
-\r
-   <para>\r
-    The method to set the shared library search path varies between\r
-    platforms, but the most widely usable method is to set the\r
-    environment variable <envar>LD_LIBRARY_PATH</> like so: In Bourne\r
-    shells (<command>sh</>, <command>ksh</>, <command>bash</>, <command>zsh</>)\r
-<programlisting>\r
-LD_LIBRARY_PATH=/usr/local/pgsql/lib\r
-export LD_LIBRARY_PATH\r
-</programlisting>\r
-    or in <command>csh</> or <command>tcsh</>\r
-<programlisting>\r
-setenv LD_LIBRARY_PATH /usr/local/pgsql/lib\r
-</programlisting>\r
-    Replace <literal>/usr/local/pgsql/lib</> with whatever you set\r
-    <option><literal>--libdir</></> to in <xref linkend="configure">.\r
-    You should put these commands into a shell start-up file such as\r
-    <filename>/etc/profile</> or <filename>~/.bash_profile</>.  Some\r
-    good information about the caveats associated with this method can\r
-    be found at <ulink\r
-    url="http://www.visi.com/~barr/ldpath.html"></ulink>.\r
-   </para>\r
-\r
-   <para>\r
-    On some systems it might be preferable to set the environment\r
-    variable <envar>LD_RUN_PATH</envar> <emphasis>before</emphasis>\r
-    building.\r
-   </para>\r
-\r
-   <para>\r
-    On <systemitem class="osname">Cygwin</systemitem>, put the library\r
-    directory in the <envar>PATH</envar> or move the\r
-    <filename>.dll</filename> files into the <filename>bin</filename>\r
-    directory.\r
-   </para>\r
-\r
-   <para>\r
-    If in doubt, refer to the manual pages of your system (perhaps\r
-    <command>ld.so</command> or <command>rld</command>). If you later\r
-    on get a message like\r
-<screen>\r
-psql: error in loading shared libraries\r
-libpq.so.2.1: cannot open shared object file: No such file or directory\r
-</screen>\r
-    then this step was necessary.  Simply take care of it then.\r
-   </para>\r
-\r
-   <para>\r
-    <indexterm>\r
-     <primary>ldconfig</primary>\r
-    </indexterm>\r
-    If you are on <systemitem class="osname">BSD/OS</>, <systemitem\r
-    class="osname">Linux</>, or <systemitem class="osname">SunOS 4</>\r
-    and you have root access you can run\r
-<programlisting>\r
-/sbin/ldconfig /usr/local/pgsql/lib\r
-</programlisting>\r
-    (or equivalent directory) after installation to enable the\r
-    run-time linker to find the shared libraries faster.  Refer to the\r
-    manual page of <command>ldconfig</> for more information.  On\r
-    <systemitem class="osname">FreeBSD</>, <systemitem\r
-    class="osname">NetBSD</>, and <systemitem\r
-    class="osname">OpenBSD</> the command is\r
-<programlisting>\r
-/sbin/ldconfig -m /usr/local/pgsql/lib\r
-</programlisting>\r
-    instead.  Other systems are not known to have an equivalent\r
-    command.\r
-   </para>\r
-  </sect2>\r
-\r
-  <sect2>\r
-   <title>Environment Variables</title>\r
-\r
-   <indexterm>\r
-    <primary><envar>PATH</envar></primary>\r
-   </indexterm>\r
-\r
-   <para>\r
-    If you installed into <filename>/usr/local/pgsql</> or some other\r
-    location that is not searched for programs by default, you should\r
-    add <filename>/usr/local/pgsql/bin</> (or whatever you set\r
-    <option><literal>--bindir</></> to in <xref linkend="configure">)\r
-    into your <envar>PATH</>.  Strictly speaking, this is not\r
-    necessary, but it will make the use of <productname>PostgreSQL</>\r
-    much more convenient.\r
-   </para>\r
-\r
-   <para>\r
-    To do this, add the following to your shell start-up file, such as\r
-    <filename>~/.bash_profile</> (or <filename>/etc/profile</>, if you\r
-    want it to affect every user):\r
-<programlisting>\r
-PATH=/usr/local/pgsql/bin:$PATH\r
-export PATH\r
-</programlisting>\r
-    If you are using <command>csh</> or <command>tcsh</>, then use this command:\r
-<programlisting>\r
-set path = ( /usr/local/pgsql/bin $path )\r
-</programlisting>\r
-   </para>\r
-\r
-   <para>\r
-    <indexterm>\r
-     <primary><envar>MANPATH</envar></primary>\r
-    </indexterm>\r
-    To enable your system to find the <application>man</>\r
-    documentation, you need to add lines like the following to a\r
-    shell start-up file unless you installed into a location that is\r
-    searched by default.\r
-<programlisting>\r
-MANPATH=/usr/local/pgsql/man:$MANPATH\r
-export MANPATH\r
-</programlisting>\r
-   </para>\r
-\r
-   <para>\r
-    The environment variables <envar>PGHOST</> and <envar>PGPORT</>\r
-    specify to client applications the host and port of the database\r
-    server, overriding the compiled-in defaults. If you are going to\r
-    run client applications remotely then it is convenient if every\r
-    user that plans to use the database sets <envar>PGHOST</>.  This\r
-    is not required, however: the settings can be communicated via command\r
-    line options to most client programs.\r
-   </para>\r
-  </sect2>\r
- </sect1>\r
-\r
-\r
-<![%standalone-include;[\r
- <sect1 id="install-getting-started">\r
-  <title>Getting Started</title>\r
-\r
-  <para>\r
-   The following is a quick summary of how to get <productname>PostgreSQL</> up and\r
-   running once installed. The main documentation contains more information.\r
-  </para>\r
-\r
-  <procedure>\r
-   <step>\r
-    <para>\r
-     Create a user account for the <productname>PostgreSQL</>\r
-     server. This is the user the server will run as. For production\r
-     use you should create a separate, unprivileged account\r
-     (<quote>postgres</> is commonly used). If you do not have root\r
-     access or just want to play around, your own user account is\r
-     enough, but running the server as root is a security risk and\r
-     will not work.\r
-<screen>\r
-<userinput>adduser postgres</>\r
-</screen>\r
-    </para>\r
-   </step>\r
-\r
-   <step>\r
-    <para>\r
-     Create a database installation with the <command>initdb</>\r
-     command. To run <command>initdb</> you must be logged in to your\r
-     <productname>PostgreSQL</> server account. It will not work as\r
-     root.\r
-<screen>\r
-root# <userinput>mkdir /usr/local/pgsql/data</>\r
-root# <userinput>chown postgres /usr/local/pgsql/data</>\r
-root# <userinput>su - postgres</>\r
-postgres$ <userinput>/usr/local/pgsql/bin/initdb -D /usr/local/pgsql/data</>\r
-</screen>\r
-    </para>\r
-\r
-    <para>\r
-     The <option>-D</> option specifies the location where the data\r
-     will be stored. You can use any path you want, it does not have\r
-     to be under the installation directory. Just make sure that the\r
-     server account can write to the directory (or create it, if it\r
-     doesn't already exist) before starting <command>initdb</>, as\r
-     illustrated here.\r
-    </para>\r
-   </step>\r
-\r
-   <step>\r
-    <para>\r
-     The previous step should have told you how to start up the\r
-     database server. Do so now. The command should look something\r
-     like\r
-<programlisting>\r
-/usr/local/pgsql/bin/postmaster -D /usr/local/pgsql/data\r
-</programlisting>\r
-     This will start the server in the foreground. To put the server\r
-     in the background use something like\r
-<programlisting>\r
-nohup /usr/local/pgsql/bin/postmaster -D /usr/local/pgsql/data \\r
-    &lt;/dev/null &gt;&gt;server.log 2&gt;&amp;1 &lt;/dev/null &amp;\r
-</programlisting>\r
-    </para>\r
-\r
-    <para>\r
-     To stop a server running in the background you can type\r
-<programlisting>\r
-kill `cat /usr/local/pgsql/data/postmaster.pid`\r
-</programlisting>\r
-    </para>\r
-\r
-    <para>\r
-     In order to allow TCP/IP connections (rather than only Unix\r
-     domain socket ones) you need to pass the <option>-i</> option to\r
-     <filename>postmaster</>.\r
-    </para>\r
-   </step>\r
-\r
-   <step>\r
-    <para>\r
-     Create a database:\r
-<screen>\r
-<userinput>createdb testdb</>\r
-</screen>\r
-     Then enter\r
-<screen>\r
-<userinput>psql testdb</>\r
-</screen>\r
-     to connect to that database. At the prompt you can enter SQL\r
-     commands and start experimenting.\r
-    </para>\r
-   </step>\r
-  </procedure>\r
- </sect1>\r
-\r
- <sect1 id="install-whatnow">\r
-  <title>What Now?</title>\r
-\r
-  <para>\r
-   <itemizedlist>\r
-    <listitem>\r
-     <para>\r
-      The <productname>PostgreSQL</> distribution contains a\r
-      comprehensive documentation set, which you should read sometime.\r
-      After installation, the documentation can be accessed by\r
-      pointing your browser to\r
-      <filename>/usr/local/pgsql/doc/html/index.html</>, unless you\r
-      changed the installation directories.\r
-     </para>\r
-\r
-     <para>\r
-      The first few chapters of the main documentation are the Tutorial,\r
-      which should be your first reading if you are completely new to\r
-      <acronym>SQL</> databases.  If you are familiar with database\r
-      concepts then you want to proceed with part on server\r
-      administration, which contains information about how to set up\r
-      the database server, database users, and authentication.\r
-     </para>\r
-    </listitem>\r
-\r
-    <listitem>\r
-     <para>\r
-      Usually, you will want to modify your computer so that it will\r
-      automatically start the database server whenever it boots. Some\r
-      suggestions for this are in the documentation.\r
-     </para>\r
-    </listitem>\r
-\r
-    <listitem>\r
-     <para>\r
-      Run the regression tests against the installed server (using\r
-      <command>gmake installcheck</command>). If you didn't run the\r
-      tests before installation, you should definitely do it now. This\r
-      is also explained in the documentation.\r
-     </para>\r
-    </listitem>\r
-\r
-    <listitem>\r
-     <para>\r
-      By default, <productname>PostgreSQL</> is configured to run on\r
-      minimal hardware.  This allows it to start up with almost any\r
-      hardware configuration. The default configuration is, however,\r
-      not designed for optimum performance. To achieve optimum\r
-      performance, several server parameters must be adjusted, the two\r
-      most common being <varname>shared_buffers</varname> and\r
-      <varname>work_mem</varname>.\r
-      Other parameters mentioned in the documentation also affect\r
-      performance.\r
-     </para>\r
-    </listitem>\r
-   </itemizedlist>\r
-  </para>\r
- </sect1>\r
-]]>\r
-\r
-\r
- <sect1 id="supported-platforms">\r
-  <title>Supported Platforms</title>\r
-\r
-  <para>\r
-   <productname>PostgreSQL</> has been verified by the developer\r
-   community to work on the platforms listed below. A supported\r
-   platform generally means that <productname>PostgreSQL</> builds and\r
-   installs according to these instructions and that the regression\r
-   tests pass.  <quote>Build farm</quote> entries refer to builds\r
-   reported by the <ulink url="http://www.pgbuildfarm.org/">PostgreSQL\r
-   Build Farm</ulink>.\r
-  </para>\r
-\r
-  <note>\r
-   <para>\r
-    If you are having problems with the installation on a supported\r
-    platform, please write to <email>pgsql-bugs@postgresql.org</email>\r
-    or <email>pgsql-ports@postgresql.org</email>, not to the people\r
-    listed here.\r
-   </para>\r
-  </note>\r
-\r
-    <informaltable>\r
-     <tgroup cols="5">\r
-      <thead>\r
-       <row>\r
-        <entry><acronym>OS</acronym></entry>\r
-        <entry>Processor</entry>\r
-        <entry>Version</entry>\r
-        <entry>Reported</entry>\r
-        <entry>Remarks</entry>\r
-       </row>\r
-      </thead>\r
-      <tbody>\r
-       <row>\r
-        <entry><systemitem class="osname">AIX</></entry>\r
-        <entry><systemitem>PowerPC</></entry>\r
-        <entry>8.0.0</entry>\r
-        <entry>Travis P (<email>twp@castle.fastmail.fm</email>), 2004-12-12</entry>\r
-        <entry>see also <filename>doc/FAQ_AIX</filename></entry>\r
-       </row>\r
-       <row>\r
-        <entry><systemitem class="osname">AIX</></entry>\r
-        <entry><systemitem>RS6000</></entry>\r
-        <entry>8.0.0</entry>\r
-        <entry>Hans-J&uuml;rgen Sch&ouml;nig (<email>hs@cybertec.at</email>), 2004-12-06</entry>\r
-        <entry>see also <filename>doc/FAQ_AIX</filename></entry>\r
-       </row>\r
-       <row>\r
-        <entry><systemitem class="osname">BSD/OS</></entry>\r
-        <entry><systemitem>x86</></entry>\r
-        <entry>8.0.0</entry>\r
-        <entry>Bruce Momjian (<email>pgman@candle.pha.pa.us</email>), 2004-12-07</entry>\r
-        <entry>4.3.1</entry>\r
-       </row>\r
-       <row>\r
-        <entry><systemitem class="osname">Debian GNU/Linux</></entry>\r
-        <entry><systemitem>Alpha</></entry>\r
-        <entry>7.4</entry>\r
-        <entry>No&egrave;l K&ouml;the (<email>noel@debian.org</email>), 2003-10-25</entry>\r
-        <entry></entry>\r
-       </row>\r
-       <row>\r
-        <entry><systemitem class="osname">Debian GNU/Linux</></entry>\r
-        <entry><systemitem>AMD64</></entry>\r
-        <entry>8.0.0</entry>\r
-        <entry>Build farm <systemitem class="systemname">panda</systemitem>, snapshot 2004-12-06 01:20:02</entry>\r
-        <entry>sid, kernel 2.6</entry>\r
-       </row>\r
-       <row>\r
-        <entry><systemitem class="osname">Debian GNU/Linux</></entry>\r
-        <entry><systemitem>arm41</></entry>\r
-        <entry>7.4</entry>\r
-        <entry>No&egrave;l K&ouml;the (<email>noel@debian.org</email>), 2003-10-25</entry>\r
-        <entry></entry>\r
-       </row>\r
-       <row>\r
-        <entry><systemitem class="osname">Debian GNU/Linux</></entry>\r
-        <entry><systemitem>Itanium</></entry>\r
-        <entry>7.4</entry>\r
-        <entry>No&egrave;l K&ouml;the (<email>noel@debian.org</email>), 2003-10-25</entry>\r
-        <entry></entry>\r
-       </row>\r
-       <row>\r
-        <entry><systemitem class="osname">Debian GNU/Linux</></entry>\r
-        <entry><systemitem>m68k</></entry>\r
-        <entry>8.0.0</entry>\r
-        <entry>No&egrave;l K&ouml;the (<email>noel@debian.org</email>), 2004-12-09</entry>\r
-        <entry>sid</entry>\r
-       </row>\r
-       <row>\r
-        <entry><systemitem class="osname">Debian GNU/Linux</></entry>\r
-        <entry><systemitem>MIPS</></entry>\r
-        <entry>8.0.0</entry>\r
-        <entry>Build farm <systemitem class="systemname">lionfish</systemitem>, snapshot 2004-12-06 11:00:08</entry>\r
-        <entry>3.1 (sarge), kernel 2.4</entry>\r
-       </row>\r
-       <row>\r
-        <entry><systemitem class="osname">Debian GNU/Linux</></entry>\r
-        <entry><systemitem>PA-RISC</></entry>\r
-        <entry>8.0.0</entry>\r
-        <entry>No&egrave;l K&ouml;the (<email>noel@debian.org</email>), 2004-12-07</entry>\r
-        <entry></entry>\r
-     </row>\r
-       <row>\r
-        <entry><systemitem class="osname">Debian GNU/Linux</></entry>\r
-        <entry><systemitem>PowerPC</></entry>\r
-        <entry>8.0.0</entry>\r
-        <entry>No&egrave;l K&ouml;the (<email>noel@debian.org</email>), 2004-12-15</entry>\r
-        <entry></entry>\r
-       </row>\r
-       <row>\r
-        <entry><systemitem class="osname">Debian GNU/Linux</></entry>\r
-        <entry><systemitem>S/390</></entry>\r
-        <entry>7.4</entry>\r
-        <entry>No&egrave;l K&ouml;the (<email>noel@debian.org</email>), 2003-10-25</entry>\r
-        <entry></entry>\r
-       </row>\r
-       <row>\r
-        <entry><systemitem class="osname">Debian GNU/Linux</></entry>\r
-        <entry><systemitem>Sparc</></entry>\r
-        <entry>8.0.0</entry>\r
-        <entry>No&egrave;l K&ouml;the (<email>noel@debian.org</email>), 2004-12-09</entry>\r
-        <entry>sid, 32-bit</entry>\r
-       </row>\r
-       <row>\r
-        <entry><systemitem class="osname">Debian GNU/Linux</></entry>\r
-        <entry><systemitem>x86</></entry>\r
-        <entry>8.0.0</entry>\r
-        <entry>Peter Eisentraut (<email>peter_e@gmx.net</email>), 2004-12-06</entry>\r
-        <entry>3.1 (sarge), kernel 2.6</entry>\r
-       </row>\r
-       <row>\r
-        <entry><systemitem class="osname">Fedora</></entry>\r
-        <entry><systemitem>AMD64</></entry>\r
-        <entry>8.0.0</entry>\r
-        <entry>John Gray (<email>jgray@azuli.co.uk</email>), 2004-12-12</entry>\r
-        <entry>FC3</entry>\r
-       </row>\r
-       <row>\r
-        <entry><systemitem class="osname">Fedora</></entry>\r
-        <entry><systemitem>x86</></entry>\r
-        <entry>8.0.0</entry>\r
-        <entry>Build farm <systemitem class="systemname">dog</systemitem>, snapshot 2004-12-06 02:06:01</entry>\r
-        <entry>FC1</entry>\r
-       </row>\r
-       <row>\r
-        <entry><systemitem class="osname">FreeBSD</></entry>\r
-        <entry><systemitem>Alpha</></entry>\r
-        <entry>7.4</entry>\r
-        <entry>Peter Eisentraut (<email>peter_e@gmx.net</email>), 2003-10-25</entry>\r
-        <entry>4.8</entry>\r
-       </row>\r
-       <row>\r
-        <entry><systemitem class="osname">FreeBSD</></entry>\r
-        <entry><systemitem>x86</></entry>\r
-        <entry>8.0.0</entry>\r
-        <entry>Build farm <systemitem class="systemname">cockatoo</systemitem>, snapshot 2004-12-06 14:10:01 (4.10);\r
-         Marc Fournier (<email>scrappy@postgresql.org</email>), 2004-12-07 (5.3)</entry>\r
-        <entry></entry>\r
-       </row>\r
-       <row>\r
-        <entry><systemitem class="osname">Gentoo Linux</></entry>\r
-        <entry><systemitem>x86</></entry>\r
-        <entry>8.0.0</entry>\r
-        <entry>Paul Bort (<email>pbort@tmwsystems.com</email>), 2004-12-07</entry>\r
-        <entry></entry>\r
-       </row>\r
-       <row>\r
-        <entry><systemitem class="osname">HP-UX</></entry>\r
-        <entry><systemitem>PA-RISC</></entry>\r
-        <entry>7.4</entry>\r
-        <entry>\r
-         Tom Lane (<email>tgl@sss.pgh.pa.us</email>), 2003-10-31 (10.20);\r
-         Peter Eisentraut (<email>peter_e@gmx.net</email>), 2003-11-04 (11.00)\r
-        </entry>\r
-        <entry><command>gcc</> and <command>cc</>; see also <filename>doc/FAQ_HPUX</filename></entry>\r
-       </row>\r
-       <row>\r
-        <entry><systemitem class="osname">IRIX</></entry>\r
-        <entry><systemitem>MIPS</></entry>\r
-        <entry>7.4</entry>\r
-        <entry>Robert E. Bruccoleri (<email>bruc@stone.congenomics.com</email>), 2003-11-12</entry>\r
-        <entry>6.5.20, <command>cc</command> only</entry>\r
-       </row>\r
-       <row>\r
-        <entry><systemitem class="osname">Mac OS X</></entry>\r
-        <entry><systemitem>PowerPC</></entry>\r
-        <entry>8.0.0</entry>\r
-        <entry>Andrew Rawnsley (<email>ronz@ravensfield.com</email>), 2004-12-07</entry>\r
-        <entry>10.3.5</entry>\r
-       </row>\r
-       <row>\r
-        <entry><systemitem class="osname">Mandrakelinux</></entry>\r
-        <entry><systemitem>x86</></entry>\r
-        <entry>8.0.0</entry>\r
-        <entry>Build farm <systemitem class="systemname">shrew</systemitem>, snapshot 2004-12-06 02:02:01</entry>\r
-        <entry>10.0</entry>\r
-       </row>\r
-       <row>\r
-        <entry><systemitem class="osname">NetBSD</></entry>\r
-        <entry><systemitem>arm32</></entry>\r
-        <entry>7.4</entry>\r
-        <entry>Patrick Welche (<email>prlw1@newn.cam.ac.uk</email>), 2003-11-12</entry>\r
-        <entry>1.6ZE/acorn32</entry>\r
-       </row>\r
-       <row>\r
-        <entry><systemitem class="osname">NetBSD</></entry>\r
-        <entry><systemitem>Sparc</></entry>\r
-        <entry>7.4.1</entry>\r
-        <entry>Peter Eisentraut (<email>peter_e@gmx.net</email>), 2003-11-26</entry>\r
-        <entry>1.6.1, 32-bit</entry>\r
-       </row>\r
-       <row>\r
-        <entry><systemitem class="osname">NetBSD</></entry>\r
-        <entry><systemitem>x86</></entry>\r
-        <entry>8.0.0</entry>\r
-        <entry>Build farm <systemitem class="systemname">canary</systemitem>, snapshot 2004-12-06 03:30:00</entry>\r
-        <entry>1.6</entry>\r
-       </row>\r
-       <row>\r
-        <entry><systemitem class="osname">OpenBSD</></entry>\r
-        <entry><systemitem>Sparc</></entry>\r
-        <entry>7.4</entry>\r
-        <entry>Peter Eisentraut (<email>peter_e@gmx.net</email>), 2003-11-01</entry>\r
-        <entry>3.4</entry>\r
-       </row>\r
-       <row>\r
-        <entry><systemitem class="osname">OpenBSD</></entry>\r
-        <entry><systemitem>x86</></entry>\r
-        <entry>8.0.0</entry>\r
-        <entry>Build farm <systemitem class="systemname">emu</systemitem>, snapshot 2004-12-06 11:35:03</entry>\r
-        <entry>3.6</entry>\r
-       </row>\r
-       <row>\r
-        <entry><systemitem class="osname">Red Hat Linux</></entry>\r
-        <entry><systemitem>AMD64</></entry>\r
-        <entry>8.0.0</entry>\r
-        <entry>Tom Lane (<email>tgl@sss.pgh.pa.us</email>), 2004-12-07</entry>\r
-        <entry>RHEL 3AS</entry>\r
-       </row>\r
-       <row>\r
-        <entry><systemitem class="osname">Red Hat Linux</></entry>\r
-        <entry><systemitem>IA64</></entry>\r
-        <entry>8.0.0</entry>\r
-        <entry>Tom Lane (<email>tgl@sss.pgh.pa.us</email>), 2004-12-07</entry>\r
-        <entry>RHEL 3AS</entry>\r
-       </row>\r
-       <row>\r
-        <entry><systemitem class="osname">Red Hat Linux</></entry>\r
-        <entry><systemitem>PowerPC</></entry>\r
-        <entry>8.0.0</entry>\r
-        <entry>Tom Lane (<email>tgl@sss.pgh.pa.us</email>), 2004-12-07</entry>\r
-        <entry>RHEL 3AS</entry>\r
-       </row>\r
-       <row>\r
-        <entry><systemitem class="osname">Red Hat Linux</></entry>\r
-        <entry><systemitem>PowerPC 64</></entry>\r
-        <entry>8.0.0</entry>\r
-        <entry>Tom Lane (<email>tgl@sss.pgh.pa.us</email>), 2004-12-07</entry>\r
-        <entry>RHEL 3AS</entry>\r
-       </row>\r
-       <row>\r
-        <entry><systemitem class="osname">Red Hat Linux</></entry>\r
-        <entry><systemitem>S/390</></entry>\r
-        <entry>8.0.0</entry>\r
-        <entry>Tom Lane (<email>tgl@sss.pgh.pa.us</email>), 2004-12-07</entry>\r
-        <entry>RHEL 3AS</entry>\r
-       </row>\r
-       <row>\r
-        <entry><systemitem class="osname">Red Hat Linux</></entry>\r
-        <entry><systemitem>S/390x</></entry>\r
-        <entry>8.0.0</entry>\r
-        <entry>Tom Lane (<email>tgl@sss.pgh.pa.us</email>), 2004-12-07</entry>\r
-        <entry>RHEL 3AS</entry>\r
-       </row>\r
-       <row>\r
-        <entry><systemitem class="osname">Red Hat Linux</></entry>\r
-        <entry><systemitem>x86</></entry>\r
-        <entry>8.0.0</entry>\r
-        <entry>Tom Lane (<email>tgl@sss.pgh.pa.us</email>), 2004-12-07</entry>\r
-        <entry>RHEL 3AS</entry>\r
-       </row>\r
-       <row>\r
-        <entry><systemitem class="osname">Solaris</></entry>\r
-        <entry><systemitem>Sparc</></entry>\r
-        <entry>8.0.0</entry>\r
-        <entry>Kenneth Marshall (<email>ktm@is.rice.edu</email>), 2004-12-07</entry>\r
-        <entry>Solaris 8; see also <filename>doc/FAQ_Solaris</filename></entry>\r
-       </row>\r
-       <row>\r
-        <entry><systemitem class="osname">Solaris</></entry>\r
-        <entry><systemitem>x86</></entry>\r
-        <entry>8.0.0</entry>\r
-        <entry>Build farm <systemitem class="systemname">kudu</systemitem>, snapshot 2004-12-10 02:30:04 (<command>cc</command>);\r
-          <systemitem class="systemname">dragonfly</systemitem>, snapshot 2004-12-09 04:30:00 (<command>gcc</command>)</entry>\r
-        <entry>Solaris 9; see also <filename>doc/FAQ_Solaris</filename></entry>\r
-       </row>\r
-       <row>\r
-        <entry><systemitem class="osname">Tru64 UNIX</></entry>\r
-        <entry><systemitem>Alpha</></entry>\r
-        <entry>7.4</entry>\r
-        <entry>Peter Eisentraut (<email>peter_e@gmx.net</email>), 2003-10-25 (5.1b);\r
-         Alessio Bragadini (<email>alessio@albourne.com</email>), 2003-10-29 (4.0g)</entry>\r
-        <entry></entry>\r
-       </row>\r
-       <row>\r
-        <entry><systemitem class="osname">UnixWare</></entry>\r
-        <entry><systemitem>x86</></entry>\r
-        <entry>8.0.0</entry>\r
-        <entry>Peter Eisentraut (<email>peter_e@gmx.net</email>), 2004-12-14</entry>\r
-        <entry><command>cc</command>, 7.1.4; see also <filename>doc/FAQ_SCO</filename></entry>\r
-       </row>\r
-       <row>\r
-        <entry><systemitem class="osname">Windows</></entry>\r
-        <entry><systemitem>x86</></entry>\r
-        <entry>8.0.0</entry>\r
-        <entry>Dave Page (<email>dpage@vale-housing.co.uk</email>), 2004-12-07</entry>\r
-        <entry>see <filename>doc/FAQ_MINGW</filename></entry>\r
-       </row>\r
-       <row>\r
-        <entry><systemitem class="osname">Windows with <application>Cygwin</application></></entry>\r
-        <entry><systemitem>x86</></entry>\r
-        <entry>8.0.0</entry>\r
-        <entry>Build farm <systemitem class="systemname">gibbon</systemitem>, snapshot 2004-12-11 01:33:01</entry>\r
-        <entry>see <filename>doc/FAQ_CYGWIN</filename></entry>\r
-       </row>\r
-      </tbody>\r
-     </tgroup>\r
-    </informaltable>\r
-\r
-  <formalpara>\r
-   <title>Unsupported Platforms:</title>\r
-   <para>\r
-    The following platforms are either known not to work, or they used\r
-    to work in a previous release and we did not receive explicit\r
-    confirmation of a successful test with version &majorversion; at\r
-    the time this list was compiled.  We include these here to let you\r
-    know that these platforms <emphasis>could</> be supported if given\r
-    some attention.\r
-   </para>\r
-  </formalpara>\r
-\r
-  <informaltable>\r
-   <tgroup cols="5">\r
-    <thead>\r
-     <row>\r
-      <entry><acronym>OS</acronym></entry>\r
-      <entry>Processor</entry>\r
-      <entry>Version</entry>\r
-      <entry>Reported</entry>\r
-      <entry>Remarks</entry>\r
-     </row>\r
-    </thead>\r
-\r
-    <tbody>\r
-     <row>\r
-      <entry><systemitem class="osname">BeOS</></entry>\r
-      <entry><systemitem>x86</></entry>\r
-      <entry>7.2</entry>\r
-      <entry>2001-11-29,\r
-       Cyril Velter (<email>cyril.velter@libertysurf.fr</email>)</entry>\r
-      <entry>needs updates to semaphore code</entry>\r
-     </row>\r
-     <row>\r
-      <entry><systemitem class="osname">Linux</></entry>\r
-      <entry><systemitem>PlayStation 2</></entry>\r
-      <entry>7.4</entry>\r
-      <entry>2003-11-02,\r
-       Peter Eisentraut (<email>peter_e@gmx.net</email>)</entry>\r
-      <entry>\r
-       needs new <filename>config.guess</filename>,\r
-       <option>--disable-spinlocks</option>\r
-      </entry>\r
-     </row>\r
-     <row>\r
-      <entry><systemitem class="osname">NetBSD</></entry>\r
-      <entry><systemitem>Alpha</></entry>\r
-      <entry>7.2</entry>\r
-      <entry>2001-11-20,\r
-       Thomas Thai (<email>tom@minnesota.com</email>)</entry>\r
-      <entry>1.5W</entry>\r
-     </row>\r
-     <row>\r
-      <entry><systemitem class="osname">NetBSD</></entry>\r
-      <entry><systemitem>MIPS</></entry>\r
-      <entry>7.2.1</entry>\r
-      <entry>2002-06-13,\r
-       Warwick Hunter (<email>whunter@agile.tv</email>)</entry>\r
-      <entry>1.5.3</entry>\r
-     </row>\r
-     <row>\r
-      <entry><systemitem class="osname">NetBSD</></entry>\r
-      <entry><systemitem>PowerPC</></entry>\r
-      <entry>7.2</entry>\r
-      <entry>2001-11-28,\r
-       Bill Studenmund (<email>wrstuden@netbsd.org</email>)</entry>\r
-      <entry>1.5</entry>\r
-     </row>\r
-     <row>\r
-      <entry><systemitem class="osname">NetBSD</></entry>\r
-      <entry><systemitem>VAX</></entry>\r
-      <entry>7.1</entry>\r
-      <entry>2001-03-30,\r
-       Tom I. Helbekkmo (<email>tih@kpnQwest.no</email>)</entry>\r
-      <entry>1.5</entry>\r
-     </row>\r
-     <row>\r
-      <entry><systemitem class="osname">QNX 4 RTOS</></entry>\r
-      <entry><systemitem>x86</></entry>\r
-      <entry>7.2</entry>\r
-      <entry>2001-12-10,\r
-       Bernd Tegge (<email>tegge@repas-aeg.de</email>)\r
-      </entry>\r
-      <entry>needs updates to semaphore code;\r
-       see also <filename>doc/FAQ_QNX4</filename></entry>\r
-     </row>\r
-     <row>\r
-      <entry><systemitem class="osname">QNX RTOS v6</></entry>\r
-      <entry><systemitem>x86</></entry>\r
-      <entry>7.2</entry>\r
-      <entry>2001-11-20, Igor Kovalenko (<email>Igor.Kovalenko@motorola.com</email>)</entry>\r
-      <entry>patches available in archives, but too late for 7.2</entry>\r
-     </row>\r
-     <row>\r
-      <entry><systemitem class="osname">SCO OpenServer</></entry>\r
-      <entry><systemitem>x86</></entry>\r
-      <entry>7.3.1</entry>\r
-      <entry>2002-12-11, \r
-       Shibashish Satpathy (<email>shib@postmark.net</>)</entry>\r
-      <entry>5.0.4, <command>gcc</>;  see also <filename>doc/FAQ_SCO</filename></entry>\r
-     </row>\r
-     <row>\r
-      <entry><systemitem class="osname">SunOS 4</></entry>\r
-      <entry><systemitem>Sparc</></entry>\r
-      <entry>7.2</entry>\r
-      <entry>2001-12-04, Tatsuo Ishii (<email>t-ishii@sra.co.jp</email>)</entry>\r
-      <entry></entry>\r
-     </row>\r
-    </tbody>\r
-   </tgroup>\r
-  </informaltable>\r
- </sect1>\r
-\r
-</chapter>\r
-\r
-<!-- Keep this comment at the end of the file\r
-Local variables:\r
-mode:sgml\r
-sgml-omittag:nil\r
-sgml-shorttag:t\r
-sgml-minimize-attributes:nil\r
-sgml-always-quote-attributes:t\r
-sgml-indent-step:1\r
-sgml-indent-tabs-mode:nil\r
-sgml-indent-data:t\r
-sgml-parent-document:nil\r
-sgml-default-dtd-file:"./reference.ced"\r
-sgml-exposed-tags:nil\r
-sgml-local-catalogs:("/usr/share/sgml/catalog")\r
-sgml-local-ecat-files:nil\r
-End:\r
--->\r
+<!-- $PostgreSQL: pgsql/doc/src/sgml/installation.sgml,v 1.218 2004/12/24 18:37:26 momjian Exp $ -->
+
+<chapter id="installation">
+ <title><![%standalone-include[<productname>PostgreSQL</>]]>
+  Installation Instructions</title>
+
+ <indexterm zone="installation">
+  <primary>installation</primary>
+ </indexterm>
+
+ <para>
+  This <![%standalone-include;[document]]>
+  <![%standalone-ignore;[chapter]]> describes the installation of
+  <productname>PostgreSQL</productname> from the source code
+  distribution.
+ </para>
+
+ <sect1 id="install-short">
+  <title>Short Version</title>
+
+  <para>
+<synopsis>
+./configure
+gmake
+su
+gmake install
+adduser postgres
+mkdir /usr/local/pgsql/data
+chown postgres /usr/local/pgsql/data
+su - postgres
+/usr/local/pgsql/bin/initdb -D /usr/local/pgsql/data
+/usr/local/pgsql/bin/postmaster -D /usr/local/pgsql/data &gt;logfile 2&gt;&amp;1 &amp;
+/usr/local/pgsql/bin/createdb test
+/usr/local/pgsql/bin/psql test
+</synopsis>
+   The long version is the rest of this
+   <![%standalone-include;[document.]]>
+   <![%standalone-ignore;[chapter.]]>
+  </para>
+ </sect1>
+
+
+ <sect1 id="install-requirements">
+  <title>Requirements</title>
+
+  <para>
+   In general, a modern Unix-compatible platform should be able to run
+   <productname>PostgreSQL</>.
+    The platforms that had received specific testing at the
+   time of release are listed in <xref linkend="supported-platforms">
+   below. In the <filename>doc</> subdirectory of the distribution
+   there are several platform-specific <acronym>FAQ</> documents you
+   might wish to consult if you are having trouble.
+  </para>
+
+  <para>
+   The following software packages are required for building
+   <productname>PostgreSQL</>:
+
+   <itemizedlist>
+    <listitem>
+     <para>
+      <indexterm>
+       <primary>make</primary>
+      </indexterm>
+
+      <acronym>GNU</> <application>make</> is required; other
+      <application>make</> programs will <emphasis>not</> work.
+      <acronym>GNU</> <application>make</> is often installed under
+      the name <filename>gmake</filename>; this document will always
+      refer to it by that name. (On some systems
+      <acronym>GNU</acronym> <application>make</> is the default tool with the name
+      <filename>make</>.) To test for <acronym>GNU</acronym>
+      <application>make</application> enter
+<screen>
+<userinput>gmake --version</userinput>
+</screen>
+      It is recommended to use version 3.76.1 or later.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      You need an <acronym>ISO</>/<acronym>ANSI</> C compiler. Recent
+      versions of <productname>GCC</> are recommendable, but
+      <productname>PostgreSQL</> is known to build with a wide variety
+      of compilers from different vendors.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      <application>gzip</> is needed to unpack the distribution in the
+      first place.<![%standalone-include;[  If you are reading this, you probably already got
+      past that hurdle.]]>
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      <indexterm>
+       <primary>readline</primary>
+      </indexterm>
+
+      The <acronym>GNU</> <productname>Readline</> library (for
+      comfortable line editing and command history retrieval) will be
+      used by default.  If you don't want to use it then you must
+      specify the <option>--without-readline</option> option for
+      <filename>configure</>.  (On <productname>NetBSD</productname>,
+      the <filename>libedit</filename> library is
+      <productname>Readline</productname>-compatible and is used if
+      <filename>libreadline</filename> is not found.)
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      <indexterm>
+       <primary>installation</primary>
+       <secondary>on Windows</secondary>
+      </indexterm>
+
+      To build on <productname>Windows NT</> or <productname>Windows
+      2000</> you need the <productname>Cygwin</> and
+      <productname>cygipc</> packages. See the file
+      <filename>doc/FAQ_MSWIN</> for details.
+     </para>
+    </listitem>
+   </itemizedlist>
+  </para>
+
+  <para>
+   The following packages are optional.  They are not required in the
+   default configuration, but they are needed when certain build
+   options are enabled, as explained below.
+
+   <itemizedlist>
+    <listitem>
+     <para>
+      To build the server programming language
+      <application>PL/Perl</application> you need a full
+      <productname>Perl</productname> installation, including the
+      <filename>libperl</filename> library and the header files.
+      Since <application>PL/Perl</application> will be a shared
+      library, the <indexterm><primary>libperl</primary></indexterm>
+      <filename>libperl</filename> library must be a shared library
+      also on most platforms.  This appears to be the default in
+      recent <productname>Perl</productname> versions, but it was not
+      in earlier versions, and in general it is the choice of whomever
+      installed Perl at your site.
+     </para>
+
+     <para>
+      If you don't have the shared library but you need one, a message
+      like this will appear during the build to point out this fact:
+<screen>
+*** Cannot build PL/Perl because libperl is not a shared library.
+*** You might have to rebuild your Perl installation.  Refer to
+*** the documentation for details.
+</screen>
+      (If you don't follow the on-screen output you will merely notice
+      that the <application>PL/Perl</application> library object,
+      <filename>plperl.so</filename> or similar, will not be
+      installed.)  If you see this, you will have to rebuild and
+      install <productname>Perl</productname> manually to be able to
+      build <application>PL/Perl</application>.  During the
+      configuration process for <productname>Perl</productname>,
+      request a shared library.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      To build the <application>PL/Python</> server programming
+      language, you need a <productname>Python</productname>
+      installation with the header files and the <application>distutils</application> module.
+      The <application>distutils</application> module is included by default with
+      <productname>Python</productname> 1.6 and later; users of
+      earlier versions of <productname>Python</productname> will need
+      to install it.
+     </para>
+
+     <para>
+      Since <application>PL/Python</application> will be a shared
+      library, the <indexterm><primary>libpython</primary></indexterm>
+      <filename>libpython</filename> library must be a shared library
+      also on most platforms.  This is not the case in a default
+      <productname>Python</productname> installation.  If after
+      building and installing you have a file called
+      <filename>plpython.so</filename> (possibly a different
+      extension), then everything went well.  Otherwise you should
+      have seen a notice like this flying by:
+<screen>
+*** Cannot build PL/Python because libpython is not a shared library.
+*** You might have to rebuild your Python installation.  Refer to
+*** the documentation for details.
+</screen>
+      That means you have to rebuild (part of) your
+      <productname>Python</productname> installation to supply this
+      shared library.
+     </para>
+
+     <para>
+      If you have problems, run <productname>Python</> 2.3 or later's
+      configure using the <literal>--enable-shared</> flag.  On some
+      operating systems you don't have to build a shared library, but
+      you will have to convince the <productname>PostgreSQL</> build
+      system of this.  Consult the <filename>Makefile</filename> in
+      the <filename>src/pl/plpython</filename> directory for details.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      If you want to build the <application>PL/Tcl</application>
+      procedural language, you of course need a Tcl installation.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      To enable Native Language Support (<acronym>NLS</acronym>), that
+      is, the ability to display a program's messages in a language
+      other than English, you need an implementation of the
+      <application>Gettext</> <acronym>API</acronym>.  Some operating
+      systems have this built-in (e.g., <systemitem
+      class="osname">Linux</>, <systemitem class="osname">NetBSD</>,
+      <systemitem class="osname">Solaris</>), for other systems you
+      can download an add-on package from here: <ulink
+      url="http://developer.postgresql.org/~petere/bsd-gettext/" ></ulink>.
+      If you are using the <application>Gettext</> implementation in
+      the <acronym>GNU</acronym> C library then you will additionally
+      need the <productname>GNU Gettext</productname> package for some
+      utility programs.  For any of the other implementations you will
+      not need it.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      <application>Kerberos</>, <productname>OpenSSL</>, or <application>PAM</>,
+      if you want to support authentication using these services.
+     </para>
+    </listitem>
+   </itemizedlist>
+  </para>
+
+  <para>
+   If you are building from a <acronym>CVS</acronym> tree instead of
+   using a released source package, or if you want to do development,
+   you also need the following packages:
+
+   <itemizedlist>
+    <listitem>
+     <para>
+      <indexterm>
+       <primary>flex</primary>
+      </indexterm>
+      <indexterm>
+       <primary>bison</primary>
+      </indexterm>
+      <indexterm>
+       <primary>yacc</primary>
+      </indexterm>
+
+      <application>Flex</> and <application>Bison</>
+      are needed to build a CVS checkout or if you changed the actual
+      scanner and parser definition files. If you need them, be sure
+      to get <application>Flex</> 2.5.4 or later and
+      <application>Bison</> 1.875 or later. Other <application>yacc</>
+      programs can sometimes be used, but doing so requires extra
+      effort and is not recommended. Other <application>lex</>
+      programs will definitely not work.
+     </para>
+    </listitem>
+   </itemizedlist>
+  </para>
+
+  <para>
+   If you need to get a <acronym>GNU</acronym> package, you can find
+   it at your local <acronym>GNU</acronym> mirror site (see <ulink
+   url="http://www.gnu.org/order/ftp.html"></>
+   for a list) or at <ulink
+   url="ftp://ftp.gnu.org/gnu/"></ulink>.
+  </para>
+
+  <para>
+   Also check that you have sufficient disk space. You will need about
+   65 MB for the source tree during compilation and about 15 MB for
+   the installation directory. An empty database cluster takes about
+   25 MB, databases take about five times the amount of space that a
+   flat text file with the same data would take. If you are going to
+   run the regression tests you will temporarily need up to an extra
+   90 MB. Use the <command>df</command> command to check for disk
+   space.
+  </para>
+ </sect1>
+
+<![%standalone-ignore;[
+ <sect1 id="install-getsource">
+  <title>Getting The Source</title>
+
+  <para>
+   The <productname>PostgreSQL</> &version; sources can be obtained by
+   anonymous FTP from <ulink
+   url="ftp://ftp.postgresql.org/pub/source/v&version;/postgresql-&version;.tar.gz"></ulink>.
+   Use a mirror if possible. After you have obtained the file, unpack it:
+<screen>
+<userinput>gunzip postgresql-&version;.tar.gz</userinput>
+<userinput>tar xf postgresql-&version;.tar</userinput>
+</screen>
+   This will create a directory
+   <filename>postgresql-&version;</filename> under the current directory
+   with the <productname>PostgreSQL</> sources.
+   Change into that directory for the rest
+   of the installation procedure.
+  </para>
+ </sect1>
+]]>
+
+ <sect1 id="install-upgrading">
+  <title>If You Are Upgrading</title>
+
+  <indexterm zone="install-upgrading">
+   <primary>upgrading</primary>
+  </indexterm>
+
+  <para>
+   The internal data storage format changes with new releases of
+   <productname>PostgreSQL</>. Therefore, if you are upgrading an
+   existing installation that does not have a version number
+   <quote>&majorversion;.x</quote>, you must back up and restore your
+   data as shown here. These instructions assume that your existing
+   installation is under the <filename>/usr/local/pgsql</> directory,
+   and that the data area is in <filename>/usr/local/pgsql/data</>.
+   Substitute your paths appropriately.
+  </para>
+
+  <procedure>
+   <step>
+    <para>
+     Make sure that your database is not updated during or after the
+     backup. This does not affect the integrity of the backup, but the
+     changed data would of course not be included. If necessary, edit
+     the permissions in the file
+     <filename>/usr/local/pgsql/data/pg_hba.conf</> (or equivalent) to
+     disallow access from everyone except you.
+    </para>
+   </step>
+
+   <step>
+    <para>
+     <indexterm>
+      <primary>pg_dumpall</primary>
+      <secondary>use during upgrade</secondary>
+     </indexterm>
+
+     To back up your database installation, type:
+<screen>
+<userinput>pg_dumpall &gt; <replaceable>outputfile</></userinput>
+</screen>
+     If you need to preserve OIDs (such as when using them as
+     foreign keys), then use the <option>-o</option> option when running
+     <application>pg_dumpall</>.
+    </para>
+
+    <para>
+     <application>pg_dumpall</application> does not
+     save large objects.  Check
+     <![%standalone-include[the documentation]]>
+     <![%standalone-ignore[<xref linkend="backup-dump-caveats">]]>
+     if you need to do this.
+    </para>
+
+    <para>
+     To make the backup, you can use the <application>pg_dumpall</application>
+     command from the version you are currently running.  For best
+     results, however, try to use the <application>pg_dumpall</application>
+     command from <productname>PostgreSQL</productname> &version;,
+     since this version contains bug fixes and improvements over older
+     versions.  While this advice might seem idiosyncratic since you
+     haven't installed the new version yet, it is advisable to follow
+     it if you plan to install the new version in parallel with the
+     old version.  In that case you can complete the installation
+     normally and transfer the data later.  This will also decrease
+     the downtime.
+    </para>
+   </step>
+
+   <step>
+    <para>
+     If you are installing the new version at the same location as the
+     old one then shut down the old server, at the latest before you
+     install the new files:
+<screen>
+<userinput>kill -INT `cat /usr/local/pgsql/data/postmaster.pid | sed 1q`</>
+</screen>
+     Versions prior to 7.0 do not have this
+     <filename>postmaster.pid</> file. If you are using such a version
+     you must find out the process ID of the server yourself, for
+     example by typing <userinput>ps ax | grep postmaster</>, and
+     supply it to the <command>kill</> command.
+    </para>
+
+    <para>
+     On systems that have <productname>PostgreSQL</> started at boot time, there is
+     probably a start-up file that will accomplish the same thing. For
+     example, on a <systemitem class="osname">Red Hat Linux</> system one might find that
+<screen>
+<userinput>/etc/rc.d/init.d/postgresql stop</userinput>
+</screen>
+     works.  Another possibility is <userinput>pg_ctl stop</>.
+    </para>
+   </step>
+
+   <step>
+    <para>
+     If you are installing in the same place as the old version then
+     it is also a good idea to move the old installation out of the
+     way, in case you have trouble and need to revert to it.
+     Use a command like this:
+<screen>
+<userinput>mv /usr/local/pgsql /usr/local/pgsql.old</>
+</screen>
+    </para>
+   </step>
+  </procedure>
+
+  <para>
+   After you have installed <productname>PostgreSQL</> &version;, create a new database
+   directory and start the new server. Remember that you must execute
+   these commands while logged in to the special database user account
+   (which you already have if you are upgrading).
+<programlisting>
+<userinput>/usr/local/pgsql/bin/initdb -D /usr/local/pgsql/data</>
+<userinput>/usr/local/pgsql/bin/postmaster -D /usr/local/pgsql/data</>
+</programlisting>
+   Finally, restore your data with
+<screen>
+<userinput>/usr/local/pgsql/bin/psql -d template1 -f <replaceable>outputfile</></userinput>
+</screen>
+   using the <emphasis>new</> <application>psql</>.
+  </para>
+
+  <para>
+   These topics are discussed at length in <![%standalone-include[the
+   documentation,]]> <![%standalone-ignore[<xref
+   linkend="migration">,]]> which you are encouraged to read in any
+   case.
+  </para>
+ </sect1>
+
+
+ <sect1 id="install-procedure">
+  <title>Installation Procedure</title>
+
+  <procedure>
+
+  <step id="configure">
+   <title>Configuration</>
+
+   <indexterm zone="configure">
+    <primary>configure</primary>
+   </indexterm>
+
+   <para>
+    The first step of the installation procedure is to configure the
+    source tree for your system and choose the options you would like.
+    This is done by running the <filename>configure</> script. For a
+    default installation simply enter
+<screen>
+<userinput>./configure</userinput>
+</screen>
+    This script will run a number of tests to guess values for various
+    system dependent variables and detect some quirks of your
+    operating system, and finally will create several files in the
+    build tree to record what it found.  (You can also run
+    <filename>configure</filename> in a directory outside the source
+    tree if you want to keep the build directory separate.)
+   </para>
+
+   <para>
+    The default configuration will build the server and utilities, as
+    well as all client applications and interfaces that require only a
+    C compiler. All files will be installed under
+    <filename>/usr/local/pgsql</> by default.
+   </para>
+
+   <para>
+    You can customize the build and installation process by supplying one
+    or more of the following command line options to
+    <filename>configure</filename>:
+
+     <variablelist>
+      <varlistentry>
+       <term><option>--prefix=<replaceable>PREFIX</></option></term>
+       <listitem>
+        <para>
+         Install all files under the directory <replaceable>PREFIX</>
+         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</> directory.
+        </para>
+
+        <para>
+         If you have special needs, you can also customize the
+         individual subdirectories with the following options. However,
+         if you leave these with their defaults, the installation will be
+         relocatable, meaning you can move the directory after
+         installation. (The <literal>man</> and <literal>doc</>
+         locations are not affected by this.)
+        </para>
+
+        <para>
+         For relocatable installs, you might want to use 
+         <filename>configure</filename>'s <literal>--disable-rpath</>
+         option.  Also, you will need to tell the operating system how
+         to find the shared libraries.
+        </para>
+       </listitem>
+      </varlistentry>
+
+      <varlistentry>
+       <term><option>--exec-prefix=<replaceable>EXEC-PREFIX</></option></term>
+       <listitem>
+        <para>
+         You can install architecture-dependent files under a
+         different prefix, <replaceable>EXEC-PREFIX</>, than what
+         <replaceable>PREFIX</> was set to. This can be useful to
+         share architecture-independent files between hosts. If you
+         omit this, then <replaceable>EXEC-PREFIX</> is set equal to
+         <replaceable>PREFIX</> and both architecture-dependent and
+         independent files will be installed under the same tree,
+         which is probably what you want.
+        </para>
+       </listitem>
+      </varlistentry>
+
+      <varlistentry>
+       <term><option>--bindir=<replaceable>DIRECTORY</></option></term>
+       <listitem>
+        <para>
+         Specifies the directory for executable programs. The default
+         is <filename><replaceable>EXEC-PREFIX</>/bin</>, which
+         normally means <filename>/usr/local/pgsql/bin</>.
+        </para>
+       </listitem>
+      </varlistentry>
+
+      <varlistentry>
+       <term><option>--datadir=<replaceable>DIRECTORY</></option></term>
+       <listitem>
+        <para>
+         Sets the directory for read-only data files used by the
+         installed programs. The default is
+         <filename><replaceable>PREFIX</>/share</>. Note that this has
+         nothing to do with where your database files will be placed.
+        </para>
+       </listitem>
+      </varlistentry>
+
+      <varlistentry>
+       <term><option>--sysconfdir=<replaceable>DIRECTORY</></option></term>
+       <listitem>
+        <para>
+         The directory for various configuration files,
+         <filename><replaceable>PREFIX</>/etc</> by default.
+        </para>
+       </listitem>
+      </varlistentry>
+
+      <varlistentry>
+       <term><option>--libdir=<replaceable>DIRECTORY</></option></term>
+       <listitem>
+        <para>
+         The location to install libraries and dynamically loadable
+         modules. The default is
+         <filename><replaceable>EXEC-PREFIX</>/lib</>.
+        </para>
+       </listitem>
+      </varlistentry>
+
+      <varlistentry>
+       <term><option>--includedir=<replaceable>DIRECTORY</></option></term>
+       <listitem>
+        <para>
+         The directory for installing C and C++ header files. The
+         default is <filename><replaceable>PREFIX</>/include</>.
+        </para>
+       </listitem>
+      </varlistentry>
+
+      <varlistentry>
+       <term><option>--mandir=<replaceable>DIRECTORY</></option></term>
+       <listitem>
+        <para>
+         The man pages that come with <productname>PostgreSQL</> will be installed under
+         this directory, in their respective
+         <filename>man<replaceable>x</></> subdirectories.
+         The default is <filename><replaceable>PREFIX</>/man</>.
+        </para>
+       </listitem>
+      </varlistentry>
+
+      <varlistentry>
+       <term><option>--with-docdir=<replaceable>DIRECTORY</></option></term>
+       <term><option>--without-docdir</option></term>
+       <listitem>
+        <para>
+         Documentation files, except <quote>man</> pages, will be
+         installed into this directory. The default is
+         <filename><replaceable>PREFIX</>/doc</>.  If the option
+         <option>--without-docdir</option> is specified, the
+         documentation will not be installed by <command>make
+         install</command>.  This is intended for packaging scripts
+         that have special methods for installing documentation.
+        </para>
+       </listitem>
+      </varlistentry>
+     </variablelist>
+
+     <note>
+      <para>
+       Care has been taken to make it possible to install
+       <productname>PostgreSQL</> into shared installation locations
+       (such as <filename>/usr/local/include</filename>) without
+       interfering with the namespace of the rest of the system. First,
+       the string <quote><literal>/postgresql</literal></quote> is
+       automatically appended to <varname>datadir</varname>,
+       <varname>sysconfdir</varname>, and <varname>docdir</varname>,
+       unless the fully expanded directory name already contains the
+       string <quote><literal>postgres</></quote> or
+       <quote><literal>pgsql</></quote>. For example, if you choose
+       <filename>/usr/local</filename> as prefix, the documentation will
+       be installed in <filename>/usr/local/doc/postgresql</filename>,
+       but if the prefix is <filename>/opt/postgres</filename>, then it
+       will be in <filename>/opt/postgres/doc</filename>. The public C
+       header files of the client interfaces are installed into
+       <varname>includedir</varname> and are namespace-clean. The
+       internal header files and the server header files are installed
+       into private directories under <varname>includedir</varname>. See
+       the documentation of each interface for information about how to
+       get at the its header files. Finally, a private subdirectory will
+       also be created, if appropriate, under <varname>libdir</varname>
+       for dynamically loadable modules.
+      </para>
+     </note>
+    </para>
+
+    <para>
+     <variablelist>
+      <varlistentry>
+       <term><option>--with-includes=<replaceable>DIRECTORIES</></option></term>
+       <listitem>
+        <para>
+         <replaceable>DIRECTORIES</> is a colon-separated list of
+         directories that will be added to the list the compiler
+         searches for header files. If you have optional packages
+         (such as GNU <application>Readline</>) installed in a non-standard
+         location,
+         you have to use this option and probably also the corresponding
+         <option>--with-libraries</> option.
+        </para>
+        <para>
+         Example: <literal>--with-includes=/opt/gnu/include:/usr/sup/include</>.
+        </para>
+       </listitem>
+      </varlistentry>
+
+      <varlistentry>
+       <term><option>--with-libraries=<replaceable>DIRECTORIES</></option></term>
+       <listitem>
+        <para>
+         <replaceable>DIRECTORIES</> is a colon-separated list of
+         directories to search for libraries. You will probably have
+         to use this option (and the corresponding
+         <option>--with-includes</> option) if you have packages
+         installed in non-standard locations.
+        </para>
+        <para>
+         Example: <literal>--with-libraries=/opt/gnu/lib:/usr/sup/lib</>.
+        </para>
+       </listitem>
+      </varlistentry>
+
+      <varlistentry>
+       <term><option>--enable-nls<optional>=<replaceable>LANGUAGES</replaceable></optional></option></term>
+       <listitem>
+        <para>
+         Enables Native Language Support (<acronym>NLS</acronym>),
+         that is, the ability to display a program's messages in a
+         language other than English.
+         <replaceable>LANGUAGES</replaceable> is a space separated
+         list of codes of the languages that you want supported, for
+         example <literal>--enable-nls='de fr'</>.  (The intersection
+         between your list and the set of actually provided
+         translations will be computed automatically.)  If you do not
+         specify a list, then all available translations are
+         installed.
+        </para>
+
+        <para>
+         To use this option, you will need an implementation of the
+         <application>Gettext</> API; see above.
+        </para>
+       </listitem>
+      </varlistentry>
+
+      <varlistentry>
+       <term><option>--with-pgport=<replaceable>NUMBER</></option></term>
+       <listitem>
+        <para>
+         Set <replaceable>NUMBER</> as the default port number for
+         server and clients. The default is 5432. The port can always
+         be changed later on, but if you specify it here then both
+         server and clients will have the same default compiled in,
+         which can be very convenient.  Usually the only good reason
+         to select a non-default value is if you intend to run multiple
+         <productname>PostgreSQL</> servers on the same machine.
+        </para>
+       </listitem>
+      </varlistentry>
+
+      <varlistentry>
+       <term><option>--with-perl</option></term>
+       <listitem>
+        <para>
+         Build the <application>PL/Perl</> server-side language.
+        </para>
+       </listitem>
+      </varlistentry>
+
+      <varlistentry>
+       <term><option>--with-python</option></term>
+       <listitem>
+        <para>
+         Build the <application>PL/Python</> server-side language.
+        </para>
+       </listitem>
+      </varlistentry>
+
+      <varlistentry>
+       <term><option>--with-tcl</option></term>
+       <listitem>
+        <para>
+         Build the <application>PL/Tcl</> server-side language.
+        </para>
+       </listitem>
+      </varlistentry>
+
+      <varlistentry>
+       <term><option>--with-tclconfig=<replaceable>DIRECTORY</replaceable></option></term>
+       <listitem>
+        <para>
+         Tcl installs the file <filename>tclConfig.sh</filename>, which
+         contains configuration information needed to build modules
+         interfacing to Tcl. This file is normally found automatically
+         at a well-known location, but if you want to use a different
+         version of Tcl you can specify the directory in which to look
+         for it.
+        </para>
+       </listitem>
+      </varlistentry>
+
+      <varlistentry>
+       <term><option>--with-krb4</option></term>
+       <term><option>--with-krb5</option></term>
+       <listitem>
+        <para>
+         Build with support for Kerberos authentication. You can use
+         either Kerberos version 4 or 5, but not both.  On many
+         systems, the Kerberos system is not installed in a location
+         that is searched by default (e.g., <filename>/usr/include</>,
+         <filename>/usr/lib</>), so you must use the options
+         <option>--with-includes</> and <option>--with-libraries</> in
+         addition to this option.  <filename>configure</> will check
+         for the required header files and libraries to make sure that
+         your Kerberos installation is sufficient before proceeding.
+        </para>
+       </listitem>
+      </varlistentry>
+
+      <varlistentry>
+       <term><option>--with-krb-srvnam=<replaceable>NAME</></option></term>
+       <listitem>
+        <para>
+         The name of the Kerberos service principal.
+         <literal>postgres</literal> is the default. There's probably no
+         reason to change this.
+        </para>
+       </listitem>
+      </varlistentry>
+
+      <varlistentry>
+       <indexterm>
+        <primary>OpenSSL</primary>
+        <seealso>SSL</seealso>
+       </indexterm>
+
+       <term><option>--with-openssl</option></term>
+       <listitem>
+        <para>
+         Build with support for <acronym>SSL</> (encrypted)
+         connections. This requires the <productname>OpenSSL</>
+         package to be installed.  <filename>configure</> will check
+         for the required header files and libraries to make sure that
+         your <productname>OpenSSL</> installation is sufficient
+         before proceeding.
+        </para>
+       </listitem>
+      </varlistentry>
+
+      <varlistentry>
+       <term><option>--with-pam</option></term>
+       <listitem>
+        <para>
+         Build with <acronym>PAM</><indexterm><primary>PAM</></>
+         (Pluggable Authentication Modules) support.
+        </para>
+       </listitem>
+      </varlistentry>
+
+      <varlistentry>
+       <term><option>--without-readline</option></term>
+       <listitem>
+        <para>
+         Prevents the use of the <application>Readline</> library.  This disables
+         command-line editing and history in
+         <application>psql</application>, so it is not recommended.
+        </para>
+       </listitem>
+      </varlistentry>
+
+      <varlistentry>
+       <term><option>--with-rendezvous</option></term>
+       <listitem>
+        <para>
+         Build with Rendezvous support.
+        </para>
+       </listitem>
+      </varlistentry>
+
+      <varlistentry>
+       <term><option>--disable-spinlocks</option></term>
+       <listitem>
+        <para>
+         Allow the build to succeed even if <productname>PostgreSQL</>
+         has no CPU spinlock support for the platform.  The lack of
+         spinlock support will result in poor performance; therefore,
+         this option should only be used if the build aborts and
+         informs you that the platform lacks spinlock support. If this
+         option is required to build <productname>PostgreSQL</> on
+         your platform, please report the problem to the
+         <productname>PostgreSQL</> developers.
+        </para>
+       </listitem>
+      </varlistentry>
+
+      <varlistentry>
+       <term><option>--enable-thread-safety</option></term>
+       <listitem>
+        <para>
+         Make the client libraries thread-safe.  This allows
+         concurrent threads in <application>libpq</application> and
+         <application>ECPG</application> programs to safely control
+         their private connection handles.
+        </para>
+       </listitem>
+      </varlistentry>
+
+      <varlistentry>
+       <term><option>--without-zlib</option></term>
+       <listitem>
+        <para>
+         Prevents the use of the <application>Zlib</> library.  This disables
+         compression support in <application>pg_dump</application>.
+         This option is only intended for those rare systems where this
+         library is not available.
+        </para>
+       </listitem>
+      </varlistentry>
+
+      <varlistentry>
+       <term><option>--enable-debug</option></term>
+       <listitem>
+        <para>
+         Compiles all programs and libraries with debugging symbols.
+         This means that you can run the programs through a debugger
+         to analyze problems. This enlarges the size of the installed
+         executables considerably, and on non-GCC compilers it usually
+         also disables compiler optimization, causing slowdowns. However,
+         having the symbols available is extremely helpful for dealing
+         with any problems that may arise.  Currently, this option is
+         recommended for production installations only if you use GCC.
+         But you should always have it on if you are doing development work
+         or running a beta version.
+        </para>
+       </listitem>
+      </varlistentry>
+
+      <varlistentry>
+       <term><option>--enable-cassert</option></term>
+       <listitem>
+        <para>
+         Enables <firstterm>assertion</> checks in the server, which test for
+         many <quote>can't happen</> conditions.  This is invaluable for
+         code development purposes, but the tests slow things down a little.
+         Also, having the tests turned on won't necessarily enhance the
+         stability of your server!  The assertion checks are not categorized
+         for severity, and so what might be a relatively harmless bug will
+         still lead to server restarts if it triggers an assertion
+         failure.  Currently, this option is not recommended for
+         production use, but you should have it on for development work
+         or when running a beta version.
+        </para>
+       </listitem>
+      </varlistentry>
+
+      <varlistentry>
+       <term><option>--enable-depend</option></term>
+       <listitem>
+        <para>
+         Enables automatic dependency tracking.  With this option, the
+         makefiles are set up so that all affected object files will
+         be rebuilt when any header file is changed.  This is useful
+         if you are doing development work, but is just wasted overhead
+         if you intend only to compile once and install.  At present,
+         this option will work only if you use GCC.
+        </para>
+       </listitem>
+      </varlistentry>
+
+     </variablelist>
+    </para>
+
+    <para>
+     If you prefer a C compiler different from the one
+     <filename>configure</filename> picks then you can set the
+     environment variable <envar>CC</> to the program of your choice.
+     By default, <filename>configure</filename> will pick
+     <filename>gcc</filename> unless this is inappropriate for the
+     platform.  Similarly, you can override the default compiler flags
+     with the <envar>CFLAGS</envar> variable.
+    </para>
+
+    <para>
+     You can specify environment variables on the
+     <filename>configure</filename> command line, for example:
+<screen>
+<userinput>./configure CC=/opt/bin/gcc CFLAGS='-O2 -pipe'</>
+</screen>
+    </para>
+   </step>
+
+  <step>
+   <title>Build</title>
+
+   <para>
+    To start the build, type
+<screen>
+<userinput>gmake</userinput>
+</screen>
+    (Remember to use <acronym>GNU</> <application>make</>.) The build
+    may take anywhere from 5 minutes to half an hour depending on your
+    hardware. The last line displayed should be
+<screen>
+All of PostgreSQL is successfully made. Ready to install.
+</screen>
+   </para>
+  </step>
+
+  <step>
+   <title>Regression Tests</title>
+
+   <indexterm>
+    <primary>regression test</primary>
+   </indexterm>
+
+   <para>
+    If you want to test the newly built server before you install it,
+    you can run the regression tests at this point. The regression
+    tests are a test suite to verify that <productname>PostgreSQL</>
+    runs on your machine in the way the developers expected it
+    to. Type
+<screen>
+<userinput>gmake check</userinput>
+</screen>
+    (This won't work as root; do it as an unprivileged user.)
+    <![%standalone-include[The file
+    <filename>src/test/regress/README</> and the
+    documentation contain]]>
+    <![%standalone-ignore[<xref linkend="regress"> contains]]>
+    detailed information about interpreting the test results. You can
+    repeat this test at any later time by issuing the same command.
+   </para>
+  </step>
+
+  <step id="install">
+   <title>Installing The Files</title>
+
+   <note>
+    <para>
+     If you are upgrading an existing system and are going to install
+     the new files over the old ones, then you should have backed up
+     your data and shut down the old server by now, as explained in
+     <xref linkend="install-upgrading"> above.
+    </para>
+   </note>
+
+   <para>
+    To install <productname>PostgreSQL</> enter
+<screen>
+<userinput>gmake install</userinput>
+</screen>
+    This will install files into the directories that were specified
+    in <xref linkend="configure">. Make sure that you have appropriate
+    permissions to write into that area. Normally you need to do this
+    step as root. Alternatively, you could create the target
+    directories in advance and arrange for appropriate permissions to
+    be granted.
+   </para>
+
+   <para>
+    You can use <literal>gmake install-strip</literal> instead of
+    <literal>gmake install</literal> to strip the executable files and
+    libraries as they are installed.  This will save some space.  If
+    you built with debugging support, stripping will effectively
+    remove the debugging support, so it should only be done if
+    debugging is no longer needed.  <literal>install-strip</literal>
+    tries to do a reasonable job saving space, but it does not have
+    perfect knowledge of how to strip every unneeded byte from an
+    executable file, so if you want to save all the disk space you
+    possibly can, you will have to do manual work.
+   </para>
+
+   <para>
+    The standard installation provides all the header files needed for client
+    application development as well as for any server-side program
+    development (such as custom functions or data types written in C).
+   </para>
+
+   <formalpara>
+    <title>Client-only installation:</title>
+    <para>
+     If you want to install only the client applications and
+     interface libraries, then you can use these commands:
+<screen>
+<userinput>gmake -C src/bin install</>
+<userinput>gmake -C src/include install</>
+<userinput>gmake -C src/interfaces install</>
+<userinput>gmake -C doc install</>
+</screen>
+    </para>
+   </formalpara>
+  </step>
+  </procedure>
+
+  <formalpara>
+   <title>Registering <application>eventlog</> on <systemitem 
+   class="osname">Windows</>:</title>
+   <para>
+    To register a <systemitem class="osname">Windows</> <application>eventlog</>
+    library with the operating system, issue this command after installation:
+<screen>
+<userinput>regsvr32 <replaceable>pgsql_library_directory</>/pgevent.dll</>
+</screen>
+    This creates registry entries used by the event viewer.
+   </para>
+  </formalpara>
+
+  <formalpara>
+   <title>Uninstallation:</title>
+   <para>
+    To undo the installation use the command <command>gmake
+    uninstall</>. However, this will not remove any created directories.
+   </para>
+  </formalpara>
+
+  <formalpara>
+   <title>Cleaning:</title>
+
+   <para>
+    After the installation you can make room by removing the built
+    files from the source tree with the command <command>gmake
+    clean</>. This will preserve the files made by the <command>configure</command>
+    program, so that you can rebuild everything with <command>gmake</>
+    later on. To reset the source tree to the state in which it was
+    distributed, use <command>gmake distclean</>. If you are going to
+    build for several platforms from the same source tree you must do
+    this and re-configure for each build.
+   </para>
+  </formalpara>
+
+  <para>
+   If you perform a build and then discover that your <command>configure</>
+   options were wrong, or if you change anything that <command>configure</>
+   investigates (for example, software upgrades), then it's a good
+   idea to do <command>gmake distclean</> before reconfiguring and
+   rebuilding.  Without this, your changes in configuration choices
+   may not propagate everywhere they need to.
+  </para>
+ </sect1>
+
+ <sect1 id="install-post">
+  <title>Post-Installation Setup</title>
+
+  <sect2>
+   <title>Shared Libraries</title>
+
+   <indexterm>
+    <primary>shared library</primary>
+   </indexterm>
+
+   <para>
+    On some systems that have shared libraries (which most systems do)
+    you need to tell your system how to find the newly installed
+    shared libraries.  The systems on which this is
+    <emphasis>not</emphasis> necessary include <systemitem
+    class="osname">BSD/OS</>, <systemitem class="osname">FreeBSD</>,
+    <systemitem class="osname">HP-UX</>, <systemitem
+    class="osname">IRIX</>, <systemitem class="osname">Linux</>,
+    <systemitem class="osname">NetBSD</>, <systemitem
+    class="osname">OpenBSD</>, <systemitem class="osname">Tru64
+    UNIX</> (formerly <systemitem class="osname">Digital UNIX</>), and
+    <systemitem class="osname">Solaris</>.
+   </para>
+
+   <para>
+    The method to set the shared library search path varies between
+    platforms, but the most widely usable method is to set the
+    environment variable <envar>LD_LIBRARY_PATH</> like so: In Bourne
+    shells (<command>sh</>, <command>ksh</>, <command>bash</>, <command>zsh</>)
+<programlisting>
+LD_LIBRARY_PATH=/usr/local/pgsql/lib
+export LD_LIBRARY_PATH
+</programlisting>
+    or in <command>csh</> or <command>tcsh</>
+<programlisting>
+setenv LD_LIBRARY_PATH /usr/local/pgsql/lib
+</programlisting>
+    Replace <literal>/usr/local/pgsql/lib</> with whatever you set
+    <option><literal>--libdir</></> to in <xref linkend="configure">.
+    You should put these commands into a shell start-up file such as
+    <filename>/etc/profile</> or <filename>~/.bash_profile</>.  Some
+    good information about the caveats associated with this method can
+    be found at <ulink
+    url="http://www.visi.com/~barr/ldpath.html"></ulink>.
+   </para>
+
+   <para>
+    On some systems it might be preferable to set the environment
+    variable <envar>LD_RUN_PATH</envar> <emphasis>before</emphasis>
+    building.
+   </para>
+
+   <para>
+    On <systemitem class="osname">Cygwin</systemitem>, put the library
+    directory in the <envar>PATH</envar> or move the
+    <filename>.dll</filename> files into the <filename>bin</filename>
+    directory.
+   </para>
+
+   <para>
+    If in doubt, refer to the manual pages of your system (perhaps
+    <command>ld.so</command> or <command>rld</command>). If you later
+    on get a message like
+<screen>
+psql: error in loading shared libraries
+libpq.so.2.1: cannot open shared object file: No such file or directory
+</screen>
+    then this step was necessary.  Simply take care of it then.
+   </para>
+
+   <para>
+    <indexterm>
+     <primary>ldconfig</primary>
+    </indexterm>
+    If you are on <systemitem class="osname">BSD/OS</>, <systemitem
+    class="osname">Linux</>, or <systemitem class="osname">SunOS 4</>
+    and you have root access you can run
+<programlisting>
+/sbin/ldconfig /usr/local/pgsql/lib
+</programlisting>
+    (or equivalent directory) after installation to enable the
+    run-time linker to find the shared libraries faster.  Refer to the
+    manual page of <command>ldconfig</> for more information.  On
+    <systemitem class="osname">FreeBSD</>, <systemitem
+    class="osname">NetBSD</>, and <systemitem
+    class="osname">OpenBSD</> the command is
+<programlisting>
+/sbin/ldconfig -m /usr/local/pgsql/lib
+</programlisting>
+    instead.  Other systems are not known to have an equivalent
+    command.
+   </para>
+  </sect2>
+
+  <sect2>
+   <title>Environment Variables</title>
+
+   <indexterm>
+    <primary><envar>PATH</envar></primary>
+   </indexterm>
+
+   <para>
+    If you installed into <filename>/usr/local/pgsql</> or some other
+    location that is not searched for programs by default, you should
+    add <filename>/usr/local/pgsql/bin</> (or whatever you set
+    <option><literal>--bindir</></> to in <xref linkend="configure">)
+    into your <envar>PATH</>.  Strictly speaking, this is not
+    necessary, but it will make the use of <productname>PostgreSQL</>
+    much more convenient.
+   </para>
+
+   <para>
+    To do this, add the following to your shell start-up file, such as
+    <filename>~/.bash_profile</> (or <filename>/etc/profile</>, if you
+    want it to affect every user):
+<programlisting>
+PATH=/usr/local/pgsql/bin:$PATH
+export PATH
+</programlisting>
+    If you are using <command>csh</> or <command>tcsh</>, then use this command:
+<programlisting>
+set path = ( /usr/local/pgsql/bin $path )
+</programlisting>
+   </para>
+
+   <para>
+    <indexterm>
+     <primary><envar>MANPATH</envar></primary>
+    </indexterm>
+    To enable your system to find the <application>man</>
+    documentation, you need to add lines like the following to a
+    shell start-up file unless you installed into a location that is
+    searched by default.
+<programlisting>
+MANPATH=/usr/local/pgsql/man:$MANPATH
+export MANPATH
+</programlisting>
+   </para>
+
+   <para>
+    The environment variables <envar>PGHOST</> and <envar>PGPORT</>
+    specify to client applications the host and port of the database
+    server, overriding the compiled-in defaults. If you are going to
+    run client applications remotely then it is convenient if every
+    user that plans to use the database sets <envar>PGHOST</>.  This
+    is not required, however: the settings can be communicated via command
+    line options to most client programs.
+   </para>
+  </sect2>
+ </sect1>
+
+
+<![%standalone-include;[
+ <sect1 id="install-getting-started">
+  <title>Getting Started</title>
+
+  <para>
+   The following is a quick summary of how to get <productname>PostgreSQL</> up and
+   running once installed. The main documentation contains more information.
+  </para>
+
+  <procedure>
+   <step>
+    <para>
+     Create a user account for the <productname>PostgreSQL</>
+     server. This is the user the server will run as. For production
+     use you should create a separate, unprivileged account
+     (<quote>postgres</> is commonly used). If you do not have root
+     access or just want to play around, your own user account is
+     enough, but running the server as root is a security risk and
+     will not work.
+<screen>
+<userinput>adduser postgres</>
+</screen>
+    </para>
+   </step>
+
+   <step>
+    <para>
+     Create a database installation with the <command>initdb</>
+     command. To run <command>initdb</> you must be logged in to your
+     <productname>PostgreSQL</> server account. It will not work as
+     root.
+<screen>
+root# <userinput>mkdir /usr/local/pgsql/data</>
+root# <userinput>chown postgres /usr/local/pgsql/data</>
+root# <userinput>su - postgres</>
+postgres$ <userinput>/usr/local/pgsql/bin/initdb -D /usr/local/pgsql/data</>
+</screen>
+    </para>
+
+    <para>
+     The <option>-D</> option specifies the location where the data
+     will be stored. You can use any path you want, it does not have
+     to be under the installation directory. Just make sure that the
+     server account can write to the directory (or create it, if it
+     doesn't already exist) before starting <command>initdb</>, as
+     illustrated here.
+    </para>
+   </step>
+
+   <step>
+    <para>
+     The previous step should have told you how to start up the
+     database server. Do so now. The command should look something
+     like
+<programlisting>
+/usr/local/pgsql/bin/postmaster -D /usr/local/pgsql/data
+</programlisting>
+     This will start the server in the foreground. To put the server
+     in the background use something like
+<programlisting>
+nohup /usr/local/pgsql/bin/postmaster -D /usr/local/pgsql/data \
+    &lt;/dev/null &gt;&gt;server.log 2&gt;&amp;1 &lt;/dev/null &amp;
+</programlisting>
+    </para>
+
+    <para>
+     To stop a server running in the background you can type
+<programlisting>
+kill `cat /usr/local/pgsql/data/postmaster.pid`
+</programlisting>
+    </para>
+
+    <para>
+     In order to allow TCP/IP connections (rather than only Unix
+     domain socket ones) you need to pass the <option>-i</> option to
+     <filename>postmaster</>.
+    </para>
+   </step>
+
+   <step>
+    <para>
+     Create a database:
+<screen>
+<userinput>createdb testdb</>
+</screen>
+     Then enter
+<screen>
+<userinput>psql testdb</>
+</screen>
+     to connect to that database. At the prompt you can enter SQL
+     commands and start experimenting.
+    </para>
+   </step>
+  </procedure>
+ </sect1>
+
+ <sect1 id="install-whatnow">
+  <title>What Now?</title>
+
+  <para>
+   <itemizedlist>
+    <listitem>
+     <para>
+      The <productname>PostgreSQL</> distribution contains a
+      comprehensive documentation set, which you should read sometime.
+      After installation, the documentation can be accessed by
+      pointing your browser to
+      <filename>/usr/local/pgsql/doc/html/index.html</>, unless you
+      changed the installation directories.
+     </para>
+
+     <para>
+      The first few chapters of the main documentation are the Tutorial,
+      which should be your first reading if you are completely new to
+      <acronym>SQL</> databases.  If you are familiar with database
+      concepts then you want to proceed with part on server
+      administration, which contains information about how to set up
+      the database server, database users, and authentication.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Usually, you will want to modify your computer so that it will
+      automatically start the database server whenever it boots. Some
+      suggestions for this are in the documentation.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      Run the regression tests against the installed server (using
+      <command>gmake installcheck</command>). If you didn't run the
+      tests before installation, you should definitely do it now. This
+      is also explained in the documentation.
+     </para>
+    </listitem>
+
+    <listitem>
+     <para>
+      By default, <productname>PostgreSQL</> is configured to run on
+      minimal hardware.  This allows it to start up with almost any
+      hardware configuration. The default configuration is, however,
+      not designed for optimum performance. To achieve optimum
+      performance, several server parameters must be adjusted, the two
+      most common being <varname>shared_buffers</varname> and
+      <varname>work_mem</varname>.
+      Other parameters mentioned in the documentation also affect
+      performance.
+     </para>
+    </listitem>
+   </itemizedlist>
+  </para>
+ </sect1>
+]]>
+
+
+ <sect1 id="supported-platforms">
+  <title>Supported Platforms</title>
+
+  <para>
+   <productname>PostgreSQL</> has been verified by the developer
+   community to work on the platforms listed below. A supported
+   platform generally means that <productname>PostgreSQL</> builds and
+   installs according to these instructions and that the regression
+   tests pass.  <quote>Build farm</quote> entries refer to builds
+   reported by the <ulink url="http://www.pgbuildfarm.org/">PostgreSQL
+   Build Farm</ulink>.
+  </para>
+
+  <note>
+   <para>
+    If you are having problems with the installation on a supported
+    platform, please write to <email>pgsql-bugs@postgresql.org</email>
+    or <email>pgsql-ports@postgresql.org</email>, not to the people
+    listed here.
+   </para>
+  </note>
+
+    <informaltable>
+     <tgroup cols="5">
+      <thead>
+       <row>
+        <entry><acronym>OS</acronym></entry>
+        <entry>Processor</entry>
+        <entry>Version</entry>
+        <entry>Reported</entry>
+        <entry>Remarks</entry>
+       </row>
+      </thead>
+      <tbody>
+       <row>
+        <entry><systemitem class="osname">AIX</></entry>
+        <entry><systemitem>PowerPC</></entry>
+        <entry>8.0.0</entry>
+        <entry>Travis P (<email>twp@castle.fastmail.fm</email>), 2004-12-12</entry>
+        <entry>see also <filename>doc/FAQ_AIX</filename></entry>
+       </row>
+       <row>
+        <entry><systemitem class="osname">AIX</></entry>
+        <entry><systemitem>RS6000</></entry>
+        <entry>8.0.0</entry>
+        <entry>Hans-J&uuml;rgen Sch&ouml;nig (<email>hs@cybertec.at</email>), 2004-12-06</entry>
+        <entry>see also <filename>doc/FAQ_AIX</filename></entry>
+       </row>
+       <row>
+        <entry><systemitem class="osname">BSD/OS</></entry>
+        <entry><systemitem>x86</></entry>
+        <entry>8.0.0</entry>
+        <entry>Bruce Momjian (<email>pgman@candle.pha.pa.us</email>), 2004-12-07</entry>
+        <entry>4.3.1</entry>
+       </row>
+       <row>
+        <entry><systemitem class="osname">Debian GNU/Linux</></entry>
+        <entry><systemitem>Alpha</></entry>
+        <entry>7.4</entry>
+        <entry>No&egrave;l K&ouml;the (<email>noel@debian.org</email>), 2003-10-25</entry>
+        <entry></entry>
+       </row>
+       <row>
+        <entry><systemitem class="osname">Debian GNU/Linux</></entry>
+        <entry><systemitem>AMD64</></entry>
+        <entry>8.0.0</entry>
+        <entry>Build farm <systemitem class="systemname">panda</systemitem>, snapshot 2004-12-06 01:20:02</entry>
+        <entry>sid, kernel 2.6</entry>
+       </row>
+       <row>
+        <entry><systemitem class="osname">Debian GNU/Linux</></entry>
+        <entry><systemitem>arm41</></entry>
+        <entry>7.4</entry>
+        <entry>No&egrave;l K&ouml;the (<email>noel@debian.org</email>), 2003-10-25</entry>
+        <entry></entry>
+       </row>
+       <row>
+        <entry><systemitem class="osname">Debian GNU/Linux</></entry>
+        <entry><systemitem>Itanium</></entry>
+        <entry>7.4</entry>
+        <entry>No&egrave;l K&ouml;the (<email>noel@debian.org</email>), 2003-10-25</entry>
+        <entry></entry>
+       </row>
+       <row>
+        <entry><systemitem class="osname">Debian GNU/Linux</></entry>
+        <entry><systemitem>m68k</></entry>
+        <entry>8.0.0</entry>
+        <entry>No&egrave;l K&ouml;the (<email>noel@debian.org</email>), 2004-12-09</entry>
+        <entry>sid</entry>
+       </row>
+       <row>
+        <entry><systemitem class="osname">Debian GNU/Linux</></entry>
+        <entry><systemitem>MIPS</></entry>
+        <entry>8.0.0</entry>
+        <entry>Build farm <systemitem class="systemname">lionfish</systemitem>, snapshot 2004-12-06 11:00:08</entry>
+        <entry>3.1 (sarge), kernel 2.4</entry>
+       </row>
+       <row>
+        <entry><systemitem class="osname">Debian GNU/Linux</></entry>
+        <entry><systemitem>PA-RISC</></entry>
+        <entry>8.0.0</entry>
+        <entry>No&egrave;l K&ouml;the (<email>noel@debian.org</email>), 2004-12-07</entry>
+        <entry></entry>
+     </row>
+       <row>
+        <entry><systemitem class="osname">Debian GNU/Linux</></entry>
+        <entry><systemitem>PowerPC</></entry>
+        <entry>8.0.0</entry>
+        <entry>No&egrave;l K&ouml;the (<email>noel@debian.org</email>), 2004-12-15</entry>
+        <entry></entry>
+       </row>
+       <row>
+        <entry><systemitem class="osname">Debian GNU/Linux</></entry>
+        <entry><systemitem>S/390</></entry>
+        <entry>7.4</entry>
+        <entry>No&egrave;l K&ouml;the (<email>noel@debian.org</email>), 2003-10-25</entry>
+        <entry></entry>
+       </row>
+       <row>
+        <entry><systemitem class="osname">Debian GNU/Linux</></entry>
+        <entry><systemitem>Sparc</></entry>
+        <entry>8.0.0</entry>
+        <entry>No&egrave;l K&ouml;the (<email>noel@debian.org</email>), 2004-12-09</entry>
+        <entry>sid, 32-bit</entry>
+       </row>
+       <row>
+        <entry><systemitem class="osname">Debian GNU/Linux</></entry>
+        <entry><systemitem>x86</></entry>
+        <entry>8.0.0</entry>
+        <entry>Peter Eisentraut (<email>peter_e@gmx.net</email>), 2004-12-06</entry>
+        <entry>3.1 (sarge), kernel 2.6</entry>
+       </row>
+       <row>
+        <entry><systemitem class="osname">Fedora</></entry>
+        <entry><systemitem>AMD64</></entry>
+        <entry>8.0.0</entry>
+        <entry>John Gray (<email>jgray@azuli.co.uk</email>), 2004-12-12</entry>
+        <entry>FC3</entry>
+       </row>
+       <row>
+        <entry><systemitem class="osname">Fedora</></entry>
+        <entry><systemitem>x86</></entry>
+        <entry>8.0.0</entry>
+        <entry>Build farm <systemitem class="systemname">dog</systemitem>, snapshot 2004-12-06 02:06:01</entry>
+        <entry>FC1</entry>
+       </row>
+       <row>
+        <entry><systemitem class="osname">FreeBSD</></entry>
+        <entry><systemitem>Alpha</></entry>
+        <entry>7.4</entry>
+        <entry>Peter Eisentraut (<email>peter_e@gmx.net</email>), 2003-10-25</entry>
+        <entry>4.8</entry>
+       </row>
+       <row>
+        <entry><systemitem class="osname">FreeBSD</></entry>
+        <entry><systemitem>x86</></entry>
+        <entry>8.0.0</entry>
+        <entry>Build farm <systemitem class="systemname">cockatoo</systemitem>, snapshot 2004-12-06 14:10:01 (4.10);
+         Marc Fournier (<email>scrappy@postgresql.org</email>), 2004-12-07 (5.3)</entry>
+        <entry></entry>
+       </row>
+       <row>
+        <entry><systemitem class="osname">Gentoo Linux</></entry>
+        <entry><systemitem>x86</></entry>
+        <entry>8.0.0</entry>
+        <entry>Paul Bort (<email>pbort@tmwsystems.com</email>), 2004-12-07</entry>
+        <entry></entry>
+       </row>
+       <row>
+        <entry><systemitem class="osname">HP-UX</></entry>
+        <entry><systemitem>PA-RISC</></entry>
+        <entry>7.4</entry>
+        <entry>
+         Tom Lane (<email>tgl@sss.pgh.pa.us</email>), 2003-10-31 (10.20);
+         Peter Eisentraut (<email>peter_e@gmx.net</email>), 2003-11-04 (11.00)
+        </entry>
+        <entry><command>gcc</> and <command>cc</>; see also <filename>doc/FAQ_HPUX</filename></entry>
+       </row>
+       <row>
+        <entry><systemitem class="osname">IRIX</></entry>
+        <entry><systemitem>MIPS</></entry>
+        <entry>7.4</entry>
+        <entry>Robert E. Bruccoleri (<email>bruc@stone.congenomics.com</email>), 2003-11-12</entry>
+        <entry>6.5.20, <command>cc</command> only</entry>
+       </row>
+       <row>
+        <entry><systemitem class="osname">Mac OS X</></entry>
+        <entry><systemitem>PowerPC</></entry>
+        <entry>8.0.0</entry>
+        <entry>Andrew Rawnsley (<email>ronz@ravensfield.com</email>), 2004-12-07</entry>
+        <entry>10.3.5</entry>
+       </row>
+       <row>
+        <entry><systemitem class="osname">Mandrakelinux</></entry>
+        <entry><systemitem>x86</></entry>
+        <entry>8.0.0</entry>
+        <entry>Build farm <systemitem class="systemname">shrew</systemitem>, snapshot 2004-12-06 02:02:01</entry>
+        <entry>10.0</entry>
+       </row>
+       <row>
+        <entry><systemitem class="osname">NetBSD</></entry>
+        <entry><systemitem>arm32</></entry>
+        <entry>7.4</entry>
+        <entry>Patrick Welche (<email>prlw1@newn.cam.ac.uk</email>), 2003-11-12</entry>
+        <entry>1.6ZE/acorn32</entry>
+       </row>
+       <row>
+        <entry><systemitem class="osname">NetBSD</></entry>
+        <entry><systemitem>Sparc</></entry>
+        <entry>7.4.1</entry>
+        <entry>Peter Eisentraut (<email>peter_e@gmx.net</email>), 2003-11-26</entry>
+        <entry>1.6.1, 32-bit</entry>
+       </row>
+       <row>
+        <entry><systemitem class="osname">NetBSD</></entry>
+        <entry><systemitem>x86</></entry>
+        <entry>8.0.0</entry>
+        <entry>Build farm <systemitem class="systemname">canary</systemitem>, snapshot 2004-12-06 03:30:00</entry>
+        <entry>1.6</entry>
+       </row>
+       <row>
+        <entry><systemitem class="osname">OpenBSD</></entry>
+        <entry><systemitem>Sparc</></entry>
+        <entry>7.4</entry>
+        <entry>Peter Eisentraut (<email>peter_e@gmx.net</email>), 2003-11-01</entry>
+        <entry>3.4</entry>
+       </row>
+       <row>
+        <entry><systemitem class="osname">OpenBSD</></entry>
+        <entry><systemitem>x86</></entry>
+        <entry>8.0.0</entry>
+        <entry>Build farm <systemitem class="systemname">emu</systemitem>, snapshot 2004-12-06 11:35:03</entry>
+        <entry>3.6</entry>
+       </row>
+       <row>
+        <entry><systemitem class="osname">Red Hat Linux</></entry>
+        <entry><systemitem>AMD64</></entry>
+        <entry>8.0.0</entry>
+        <entry>Tom Lane (<email>tgl@sss.pgh.pa.us</email>), 2004-12-07</entry>
+        <entry>RHEL 3AS</entry>
+       </row>
+       <row>
+        <entry><systemitem class="osname">Red Hat Linux</></entry>
+        <entry><systemitem>IA64</></entry>
+        <entry>8.0.0</entry>
+        <entry>Tom Lane (<email>tgl@sss.pgh.pa.us</email>), 2004-12-07</entry>
+        <entry>RHEL 3AS</entry>
+       </row>
+       <row>
+        <entry><systemitem class="osname">Red Hat Linux</></entry>
+        <entry><systemitem>PowerPC</></entry>
+        <entry>8.0.0</entry>
+        <entry>Tom Lane (<email>tgl@sss.pgh.pa.us</email>), 2004-12-07</entry>
+        <entry>RHEL 3AS</entry>
+       </row>
+       <row>
+        <entry><systemitem class="osname">Red Hat Linux</></entry>
+        <entry><systemitem>PowerPC 64</></entry>
+        <entry>8.0.0</entry>
+        <entry>Tom Lane (<email>tgl@sss.pgh.pa.us</email>), 2004-12-07</entry>
+        <entry>RHEL 3AS</entry>
+       </row>
+       <row>
+        <entry><systemitem class="osname">Red Hat Linux</></entry>
+        <entry><systemitem>S/390</></entry>
+        <entry>8.0.0</entry>
+        <entry>Tom Lane (<email>tgl@sss.pgh.pa.us</email>), 2004-12-07</entry>
+        <entry>RHEL 3AS</entry>
+       </row>
+       <row>
+        <entry><systemitem class="osname">Red Hat Linux</></entry>
+        <entry><systemitem>S/390x</></entry>
+        <entry>8.0.0</entry>
+        <entry>Tom Lane (<email>tgl@sss.pgh.pa.us</email>), 2004-12-07</entry>
+        <entry>RHEL 3AS</entry>
+       </row>
+       <row>
+        <entry><systemitem class="osname">Red Hat Linux</></entry>
+        <entry><systemitem>x86</></entry>
+        <entry>8.0.0</entry>
+        <entry>Tom Lane (<email>tgl@sss.pgh.pa.us</email>), 2004-12-07</entry>
+        <entry>RHEL 3AS</entry>
+       </row>
+       <row>
+        <entry><systemitem class="osname">Solaris</></entry>
+        <entry><systemitem>Sparc</></entry>
+        <entry>8.0.0</entry>
+        <entry>Kenneth Marshall (<email>ktm@is.rice.edu</email>), 2004-12-07</entry>
+        <entry>Solaris 8; see also <filename>doc/FAQ_Solaris</filename></entry>
+       </row>
+       <row>
+        <entry><systemitem class="osname">Solaris</></entry>
+        <entry><systemitem>x86</></entry>
+        <entry>8.0.0</entry>
+        <entry>Build farm <systemitem class="systemname">kudu</systemitem>, snapshot 2004-12-10 02:30:04 (<command>cc</command>);
+          <systemitem class="systemname">dragonfly</systemitem>, snapshot 2004-12-09 04:30:00 (<command>gcc</command>)</entry>
+        <entry>Solaris 9; see also <filename>doc/FAQ_Solaris</filename></entry>
+       </row>
+       <row>
+        <entry><systemitem class="osname">Tru64 UNIX</></entry>
+        <entry><systemitem>Alpha</></entry>
+        <entry>7.4</entry>
+        <entry>Peter Eisentraut (<email>peter_e@gmx.net</email>), 2003-10-25 (5.1b);
+         Alessio Bragadini (<email>alessio@albourne.com</email>), 2003-10-29 (4.0g)</entry>
+        <entry></entry>
+       </row>
+       <row>
+        <entry><systemitem class="osname">UnixWare</></entry>
+        <entry><systemitem>x86</></entry>
+        <entry>8.0.0</entry>
+        <entry>Peter Eisentraut (<email>peter_e@gmx.net</email>), 2004-12-14</entry>
+        <entry><command>cc</command>, 7.1.4; see also <filename>doc/FAQ_SCO</filename></entry>
+       </row>
+       <row>
+        <entry><systemitem class="osname">Windows</></entry>
+        <entry><systemitem>x86</></entry>
+        <entry>8.0.0</entry>
+        <entry>Dave Page (<email>dpage@vale-housing.co.uk</email>), 2004-12-07</entry>
+        <entry>see <filename>doc/FAQ_MINGW</filename></entry>
+       </row>
+       <row>
+        <entry><systemitem class="osname">Windows with <application>Cygwin</application></></entry>
+        <entry><systemitem>x86</></entry>
+        <entry>8.0.0</entry>
+        <entry>Build farm <systemitem class="systemname">gibbon</systemitem>, snapshot 2004-12-11 01:33:01</entry>
+        <entry>see <filename>doc/FAQ_CYGWIN</filename></entry>
+       </row>
+      </tbody>
+     </tgroup>
+    </informaltable>
+
+  <formalpara>
+   <title>Unsupported Platforms:</title>
+   <para>
+    The following platforms are either known not to work, or they used
+    to work in a previous release and we did not receive explicit
+    confirmation of a successful test with version &majorversion; at
+    the time this list was compiled.  We include these here to let you
+    know that these platforms <emphasis>could</> be supported if given
+    some attention.
+   </para>
+  </formalpara>
+
+  <informaltable>
+   <tgroup cols="5">
+    <thead>
+     <row>
+      <entry><acronym>OS</acronym></entry>
+      <entry>Processor</entry>
+      <entry>Version</entry>
+      <entry>Reported</entry>
+      <entry>Remarks</entry>
+     </row>
+    </thead>
+
+    <tbody>
+     <row>
+      <entry><systemitem class="osname">BeOS</></entry>
+      <entry><systemitem>x86</></entry>
+      <entry>7.2</entry>
+      <entry>2001-11-29,
+       Cyril Velter (<email>cyril.velter@libertysurf.fr</email>)</entry>
+      <entry>needs updates to semaphore code</entry>
+     </row>
+     <row>
+      <entry><systemitem class="osname">Linux</></entry>
+      <entry><systemitem>PlayStation 2</></entry>
+      <entry>7.4</entry>
+      <entry>2003-11-02,
+       Peter Eisentraut (<email>peter_e@gmx.net</email>)</entry>
+      <entry>
+       needs new <filename>config.guess</filename>,
+       <option>--disable-spinlocks</option>
+      </entry>
+     </row>
+     <row>
+      <entry><systemitem class="osname">NetBSD</></entry>
+      <entry><systemitem>Alpha</></entry>
+      <entry>7.2</entry>
+      <entry>2001-11-20,
+       Thomas Thai (<email>tom@minnesota.com</email>)</entry>
+      <entry>1.5W</entry>
+     </row>
+     <row>
+      <entry><systemitem class="osname">NetBSD</></entry>
+      <entry><systemitem>MIPS</></entry>
+      <entry>7.2.1</entry>
+      <entry>2002-06-13,
+       Warwick Hunter (<email>whunter@agile.tv</email>)</entry>
+      <entry>1.5.3</entry>
+     </row>
+     <row>
+      <entry><systemitem class="osname">NetBSD</></entry>
+      <entry><systemitem>PowerPC</></entry>
+      <entry>7.2</entry>
+      <entry>2001-11-28,
+       Bill Studenmund (<email>wrstuden@netbsd.org</email>)</entry>
+      <entry>1.5</entry>
+     </row>
+     <row>
+      <entry><systemitem class="osname">NetBSD</></entry>
+      <entry><systemitem>VAX</></entry>
+      <entry>7.1</entry>
+      <entry>2001-03-30,
+       Tom I. Helbekkmo (<email>tih@kpnQwest.no</email>)</entry>
+      <entry>1.5</entry>
+     </row>
+     <row>
+      <entry><systemitem class="osname">QNX 4 RTOS</></entry>
+      <entry><systemitem>x86</></entry>
+      <entry>7.2</entry>
+      <entry>2001-12-10,
+       Bernd Tegge (<email>tegge@repas-aeg.de</email>)
+      </entry>
+      <entry>needs updates to semaphore code;
+       see also <filename>doc/FAQ_QNX4</filename></entry>
+     </row>
+     <row>
+      <entry><systemitem class="osname">QNX RTOS v6</></entry>
+      <entry><systemitem>x86</></entry>
+      <entry>7.2</entry>
+      <entry>2001-11-20, Igor Kovalenko (<email>Igor.Kovalenko@motorola.com</email>)</entry>
+      <entry>patches available in archives, but too late for 7.2</entry>
+     </row>
+     <row>
+      <entry><systemitem class="osname">SCO OpenServer</></entry>
+      <entry><systemitem>x86</></entry>
+      <entry>7.3.1</entry>
+      <entry>2002-12-11, 
+       Shibashish Satpathy (<email>shib@postmark.net</>)</entry>
+      <entry>5.0.4, <command>gcc</>;  see also <filename>doc/FAQ_SCO</filename></entry>
+     </row>
+     <row>
+      <entry><systemitem class="osname">SunOS 4</></entry>
+      <entry><systemitem>Sparc</></entry>
+      <entry>7.2</entry>
+      <entry>2001-12-04, Tatsuo Ishii (<email>t-ishii@sra.co.jp</email>)</entry>
+      <entry></entry>
+     </row>
+    </tbody>
+   </tgroup>
+  </informaltable>
+ </sect1>
+
+</chapter>
+
+<!-- Keep this comment at the end of the file
+Local variables:
+mode:sgml
+sgml-omittag:nil
+sgml-shorttag:t
+sgml-minimize-attributes:nil
+sgml-always-quote-attributes:t
+sgml-indent-step:1
+sgml-indent-tabs-mode:nil
+sgml-indent-data:t
+sgml-parent-document:nil
+sgml-default-dtd-file:"./reference.ced"
+sgml-exposed-tags:nil
+sgml-local-catalogs:("/usr/share/sgml/catalog")
+sgml-local-ecat-files:nil
+End:
+-->