Skip to content

Commit 418bd67

Browse files
committed
Add a blurb about what tools are required to build.
1 parent 239f74d commit 418bd67

File tree

1 file changed

+94
-66
lines changed

1 file changed

+94
-66
lines changed

doc/src/sgml/installation.sgml

Lines changed: 94 additions & 66 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
<!-- $Header: /cvsroot/pgsql/doc/src/sgml/installation.sgml,v 1.17 2000/09/06 19:54:45 petere Exp $ -->
1+
<!-- $Header: /cvsroot/pgsql/doc/src/sgml/installation.sgml,v 1.18 2000/09/17 20:35:27 petere Exp $ -->
22

33
<chapter id="installation">
44
<title><![%flattext-install-include[<productname>PostgreSQL</> ]]>Installation Instructions</title>
@@ -37,50 +37,81 @@ su - postgres
3737
might wish to consult if you are having trouble.
3838
</para>
3939

40-
<formalpara>
41-
<title>Compiler</>
42-
<para>
43-
You need a Standard (<quote>ANSI</>) C compiler. Recent versions
44-
of <productname>GCC</> are recommendable, but <productname>PostgreSQL</> is known to
45-
build with a wide variety of compilers from different vendors.
46-
</para>
47-
</formalpara>
48-
49-
<formalpara>
50-
<title>Make</title>
51-
<para>
52-
Building <productname>PostgreSQL</> requires <acronym>GNU</> <application>make</>; it
53-
will <emphasis>not</> work with other <application>make</>
54-
programs. <acronym>GNU</> <application>make</> is often installed
55-
under the name <filename>gmake</filename>. This document will
56-
always refer to it by that name. (On GNU/Linux systems GNU make is
57-
the default tool with the name <filename>make</filename>.) To test
58-
for <acronym>GNU</acronym> <application>make</application> enter
40+
<para>
41+
The following prerequisites exist for building <productname>PostgreSQL</>:
42+
<itemizedlist>
43+
<listitem>
44+
<para>
45+
<acronym>GNU</> <application>make</> is required; other
46+
<application>make</> programs will <emphasis>not</> work.
47+
<acronym>GNU</> <application>make</> is often installed under
48+
the name <filename>gmake</filename>; this document will always
49+
refer to it by that name. (On GNU/Linux systems GNU make is the
50+
default tool with the name <filename>make</>.) To test for
51+
<acronym>GNU</acronym> <application>make</application> enter
5952
<screen>
6053
<userinput>gmake --version</userinput>
6154
</screen>
62-
If at all possible you should try to use version 3.76.1 or later.
63-
If you need to get <acronym>GNU</acronym>
64-
<application>make</application>, you can find it at your local
65-
<acronym>GNU</acronym> mirror site (see <ulink
66-
url="http://www.gnu.org/order/ftp.html">http://www.gnu.org/order/ftp.html</>)
67-
or at <ulink
68-
url="ftp://ftp.gnu.org/gnu/make">ftp://ftp.gnu.org/gnu/make</ulink>.
69-
</para>
70-
</formalpara>
55+
If at all possible you should use version 3.76.1 or later.
56+
</para>
57+
</listitem>
7158

72-
<formalpara>
73-
<title>Resources</>
74-
<para>
75-
Check that you have sufficient disk space. You will need about 30
76-
MB for the source tree during compilation and about 5 MB for the
77-
installation directory. An empty database takes about 1 MB, later
78-
it takes about five times the amount of space that a flat text
79-
file with the same data would take. If you are going to run the
80-
regression tests you will temporarily need an extra 20 MB. Use the
81-
<command>df</command> command to check for disk space.
82-
</para>
83-
</formalpara>
59+
<listitem>
60+
<para>
61+
You need an <acronym>ISO</>/<acronym>ANSI</> C compiler. Recent
62+
versions of <productname>GCC</> are recommendable, but
63+
<productname>PostgreSQL</> is known to build with a wide variety
64+
of compilers from different vendors.
65+
</para>
66+
</listitem>
67+
68+
<listitem>
69+
<para><application>gzip</></para>
70+
</listitem>
71+
72+
<listitem>
73+
<para>
74+
The <acronym>GNU</> <productname>Readline</> library for comfortable
75+
line editing and command history retrieval will automatically be used
76+
if found. You might wish to install it before proceeding, but it is not
77+
required.
78+
</para>
79+
</listitem>
80+
81+
<listitem>
82+
<para>
83+
<application>Flex</> and <application>Bison</> are
84+
<emphasis>not</> required when building from a released source
85+
package because the output files are pre-generated. You will
86+
need these programs only when building from a CVS tree or when
87+
the actual scanner and parser definition files were changed. If
88+
you need them, be sure to get <application>Flex</> 2.5.4 or
89+
later and <application>Bison</> 1.28 or later. Other yacc
90+
programs can sometimes be used, but doing so requires extra
91+
efforts and is not recommended. Other lex programs will
92+
definitely not work.
93+
</para>
94+
</listitem>
95+
</itemizedlist>
96+
</para>
97+
98+
<para>
99+
If you need to get a <acronym>GNU</acronym> package, you can find
100+
it at your local <acronym>GNU</acronym> mirror site (see <ulink
101+
url="http://www.gnu.org/order/ftp.html">http://www.gnu.org/order/ftp.html</>
102+
for a list) or at <ulink
103+
url="ftp://ftp.gnu.org/gnu/make">ftp://ftp.gnu.org/gnu/make</ulink>.
104+
</para>
105+
106+
<para>
107+
Also check that you have sufficient disk space. You will need about
108+
30 MB for the source tree during compilation and about 5 MB for the
109+
installation directory. An empty database takes about 1 MB, later
110+
it takes about five times the amount of space that a flat text file
111+
with the same data would take. If you are going to run the
112+
regression tests you will temporarily need an extra 20 MB. Use the
113+
<command>df</command> command to check for disk space.
114+
</para>
84115
</sect1>
85116

86117
<![%flattext-install-ignore;[
@@ -534,7 +565,9 @@ su - postgres
534565
<filename>odbcinst.ini</> configuration file. The default is
535566
<filename>/usr/local/pgsql/etc</filename> or whatever you
536567
specified as <option>--sysconfdir</option>. A default file
537-
will be installed there.
568+
will be installed there. If you intend to share the
569+
<filename>odbcinst.ini</> file between several ODBC drivers
570+
then you may want to use this option.
538571
</para>
539572
</listitem>
540573
</varlistentry>
@@ -623,17 +656,14 @@ su - postgres
623656
</variablelist>
624657
</para>
625658

626-
<formalpara>
627-
<title>Environment variables</>
628-
<para>
629-
You can set the <envar>CC</> environment variable to choose the C
630-
compiler to use. If you don't then <filename>configure</> will
631-
look for one. For example:
659+
<para>
660+
You can set the <envar>CC</> environment variable to choose the C
661+
compiler to use. If you don't then <filename>configure</> will
662+
look for one. For example:
632663
<screen>
633664
<userinput>CC=/opt/bin/gcc ./configure</>
634665
</screen>
635-
</para>
636-
</formalpara>
666+
</para>
637667

638668
</step>
639669

@@ -740,19 +770,16 @@ All of PostgreSQL is successfully made. Ready to install.
740770
</step>
741771
</procedure>
742772

743-
<formalpara>
744-
<title>Cleanup</>
745-
<para>
746-
After the installation you can make room by removing the built
747-
files from the source tree with the <command>gmake clean</>
748-
command. This will preserve the choices made by the configure
749-
program, so that you can rebuild everything with <command>gmake</>
750-
later on. To reset the source tree to the state in which it was
751-
distributed, use <command>gmake distclean</>. If you are going to
752-
build for several platforms from the same source tree you must do
753-
this and re-configure for each build.
754-
</para>
755-
</formalpara>
773+
<para>
774+
After the installation you can make room by removing the built
775+
files from the source tree with the <command>gmake clean</>
776+
command. This will preserve the choices made by the configure
777+
program, so that you can rebuild everything with <command>gmake</>
778+
later on. To reset the source tree to the state in which it was
779+
distributed, use <command>gmake distclean</>. If you are going to
780+
build for several platforms from the same source tree you must do
781+
this and re-configure for each build.
782+
</para>
756783

757784
</sect1>
758785

@@ -801,6 +828,7 @@ libpq.so.2.1: cannot open shared object file: No such file or directory
801828
</screen>
802829
then this step was necessary. Simply take care of it then.
803830
</para>
831+
804832
</sect2>
805833

806834
<sect2>
@@ -1078,7 +1106,7 @@ gunzip -c user.ps.gz \
10781106
<entry>PA-RISC</entry>
10791107
<entry>7.0</entry>
10801108
<entry>2000-04-12, Tom Lane (<email>tgl@sss.pgh.pa.us</>)</entry>
1081-
<entry></>
1109+
<entry>See also <filename>doc/FAQ_HPUX</></>
10821110
</row>
10831111
<row>
10841112
<entry>IRIX 6.5.6f</entry>
@@ -1169,14 +1197,14 @@ gunzip -c user.ps.gz \
11691197
<entry>x86</entry>
11701198
<entry>7.0</entry>
11711199
<entry>2000-04-01, Dr. Andreas Kardos (<email>kardos@repas-aeg.de</>)</entry>
1172-
<entry></>
1200+
<entry>See also <filename>doc/FAQ_QNX4</></>
11731201
</row>
11741202
<row>
11751203
<entry>SCO OpenServer 5</entry>
11761204
<entry>x86</entry>
11771205
<entry>6.5</entry>
11781206
<entry>1999-05-25, Andrew Merrill (<email>andrew@compclass.com</>)</entry>
1179-
<entry></>
1207+
<entry>See also <filename>doc/FAQ_SCO</></>
11801208
</row>
11811209
<row>
11821210
<entry>SCO UnixWare 7</entry>

0 commit comments

Comments
 (0)