Commit 8004bcf0 authored by Peter Eisentraut's avatar Peter Eisentraut

Update installation instructions to new realities. Combined into one file.

Improved automation of INSTALL file generation.
parent cc970724
This diff is collapsed.
...@@ -8,7 +8,7 @@ ...@@ -8,7 +8,7 @@
# #
# #
# IDENTIFICATION # IDENTIFICATION
# $Header: /cvsroot/pgsql/doc/src/sgml/Makefile,v 1.16 2000/07/16 14:50:38 petere Exp $ # $Header: /cvsroot/pgsql/doc/src/sgml/Makefile,v 1.17 2000/07/21 00:44:11 petere Exp $
# #
#---------------------------------------------------------------------------- #----------------------------------------------------------------------------
...@@ -199,3 +199,22 @@ distclean: ...@@ -199,3 +199,22 @@ distclean:
%.gif: %.gif:
cp -p ../graphics/$@ . cp -p ../graphics/$@ .
# Generation of the INSTALL text file. Not fully automated, but better
# than nothing.
.PHONY: INSTALL
INSTALL: INSTALL.html
@echo "|";\
echo "| You should now take \`$<', save it as a text file in Netscape,";\
echo "| and put it in place of the existing \`INSTALL' file.";\
echo "|"
@rm -f tempfile.html tempfile.sgml
INSTALL.html: tempfile.html
sed -e 's/Chapter 1. *//g' < $< > $@
tempfile.html: tempfile.sgml
jade -d $(HDSL) -V nochunks -t sgml $< > $@
tempfile.sgml: standalone-install.sgml installation.sgml
cat $+ > $@
<!-- <!--
$Header: /cvsroot/pgsql/doc/src/sgml/Attic/admin.sgml,v 1.24 2000/06/30 16:14:21 petere Exp $ $Header: /cvsroot/pgsql/doc/src/sgml/Attic/admin.sgml,v 1.25 2000/07/21 00:44:12 petere Exp $
Postgres Administrator's Guide. Postgres Administrator's Guide.
Derived from postgres.sgml. Derived from postgres.sgml.
...@@ -8,6 +8,9 @@ Derived from postgres.sgml. ...@@ -8,6 +8,9 @@ Derived from postgres.sgml.
<!doctype book PUBLIC "-//OASIS//DTD DocBook V3.1//EN" [ <!doctype book PUBLIC "-//OASIS//DTD DocBook V3.1//EN" [
<!entity version "7.1">
<!entity majorversion "7.1">
<!entity about SYSTEM "about.sgml"> <!entity about SYSTEM "about.sgml">
<!entity history SYSTEM "history.sgml"> <!entity history SYSTEM "history.sgml">
<!entity info SYSTEM "info.sgml"> <!entity info SYSTEM "info.sgml">
...@@ -16,13 +19,9 @@ Derived from postgres.sgml. ...@@ -16,13 +19,9 @@ Derived from postgres.sgml.
<!entity problems SYSTEM "problems.sgml"> <!entity problems SYSTEM "problems.sgml">
<!entity y2k SYSTEM "y2k.sgml"> <!entity y2k SYSTEM "y2k.sgml">
<!entity config SYSTEM "config.sgml">
<!entity intro-ag SYSTEM "intro-ag.sgml"> <!entity intro-ag SYSTEM "intro-ag.sgml">
<!entity install SYSTEM "install.sgml"> <!entity installation SYSTEM "installation.sgml">
<!entity installw SYSTEM "install-win32.sgml"> <!entity installw SYSTEM "install-win32.sgml">
<!entity layout SYSTEM "layout.sgml">
<!entity ports SYSTEM "ports.sgml">
<!entity release SYSTEM "release.sgml">
<!entity runtime SYSTEM "runtime.sgml"> <!entity runtime SYSTEM "runtime.sgml">
<!entity client-auth SYSTEM "client-auth.sgml"> <!entity client-auth SYSTEM "client-auth.sgml">
<!entity manage-ag SYSTEM "manage-ag.sgml"> <!entity manage-ag SYSTEM "manage-ag.sgml">
...@@ -30,8 +29,13 @@ Derived from postgres.sgml. ...@@ -30,8 +29,13 @@ Derived from postgres.sgml.
<!entity backup SYSTEM "backup.sgml"> <!entity backup SYSTEM "backup.sgml">
<!entity recovery SYSTEM "recovery.sgml"> <!entity recovery SYSTEM "recovery.sgml">
<!entity regress SYSTEM "regress.sgml"> <!entity regress SYSTEM "regress.sgml">
<!entity release SYSTEM "release.sgml">
<!entity biblio SYSTEM "biblio.sgml"> <!entity biblio SYSTEM "biblio.sgml">
<!-- see standalone-install.sgml about these -->
<!entity % flattext-install-ignore "INCLUDE">
<!entity % flattext-install-include "IGNORE">
]> ]>
<book id="admin"> <book id="admin">
...@@ -75,19 +79,6 @@ Derived from postgres.sgml. ...@@ -75,19 +79,6 @@ Derived from postgres.sgml.
</bookinfo> </bookinfo>
<!--
<TOC> </TOC>
<LOT> </LOT>
-->
<!--
<Dedication>
<Para>
Your name here...
</Para>
</Dedication>
-->
<preface id="preface"> <preface id="preface">
<title>Summary</title> <title>Summary</title>
...@@ -104,11 +95,7 @@ Your name here... ...@@ -104,11 +95,7 @@ Your name here...
</preface> </preface>
&intro-ag; &intro-ag;
&installation;
&ports;
&config;
&layout;
&install;
&installw; &installw;
&runtime; &runtime;
&client-auth; &client-auth;
......
<!-- $Header: /cvsroot/pgsql/doc/src/sgml/backup.sgml,v 2.1 2000/06/30 16:14:21 petere Exp $ --> <!-- $Header: /cvsroot/pgsql/doc/src/sgml/backup.sgml,v 2.2 2000/07/21 00:44:12 petere Exp $ -->
<chapter id="backup"> <chapter id="backup">
<title>Backup and Restore</title> <title>Backup and Restore</title>
...@@ -340,7 +340,7 @@ tar -cf backup.tar /usr/local/pgsql/data ...@@ -340,7 +340,7 @@ tar -cf backup.tar /usr/local/pgsql/data
</sect1> </sect1>
<sect1> <sect1 id="migration">
<title>Migration between releases</title> <title>Migration between releases</title>
<para> <para>
......
<chapter>
<title>Configuration Options</title>
<sect1>
<title>Parameters for Configuration
(<application>configure</application>)</title>
<para>
The full set of parameters available in <application>configure</application>
can be obtained by typing
<programlisting>
$ ./configure --help
</programlisting>
</para>
<para>
The following parameters may be of interest to installers:
<programlisting>
Directories to install PostgreSQL in:
--prefix=PREFIX install architecture-independent files in PREFIX
[/usr/local/pgsql]
--bindir=DIR user executables in DIR [EPREFIX/bin]
--libdir=DIR object code libraries in DIR [EPREFIX/lib]
--includedir=DIR C header files in DIR [PREFIX/include]
--mandir=DIR man documentation in DIR [PREFIX/man]
Features and packages:
--disable-FEATURE do not include FEATURE (same as --enable-FEATURE=no)
--enable-FEATURE[=ARG] include FEATURE [ARG=yes]
--with-PACKAGE[=ARG] use PACKAGE [ARG=yes]
--without-PACKAGE do not use PACKAGE (same as --with-PACKAGE=no)
--enable and --with options recognized:
--with-template=<replaceable>template</replaceable>
use operating system template file
see template directory
--with-includes=<replaceable>dirs</replaceable> look for header files for tcl/tk, etc in DIRS
--with-libraries=<replaceable>dirs</replaceable> look for additional libraries in DIRS
--with-libs=<replaceable>dirs</replaceable> alternate spelling of --with-libraries
--enable-locale enable locale support
--enable-recode enable cyrillic recode support
--enable-multibyte enable multibyte character support
--with-pgport=<replaceable>portnum</replaceable> change default postmaster port
--with-maxbackends=<replaceable>n</replaceable> set default maximum number of server processes
--with-tcl build Tcl interfaces and pgtclsh
--with-tclconfig=<replaceable>tcldir</replaceable>
tclConfig.sh and tkConfig.sh are in DIR
--with-perl build Perl interface and plperl
--with-odbc build ODBC driver package
--with-odbcinst=<replaceable>odbcdir</replaceable>
change default directory for odbcinst.ini
--enable-cassert enable assertion checks (for debugging)
--enable-debug build with debugging symbols (-g)
--with-CC=<replaceable>compiler</replaceable>
use specific C compiler
--with-CXX=<replaceable>compiler</replaceable>
use specific C++ compiler
--without-CXX prevent building C++ code
</programlisting>
</para>
<para>
Some systems may have trouble building a specific feature of
<productname>Postgres</productname>. For example, systems with a damaged
C++ compiler may need to specify <option>--without-CXX</option> to instruct
the build procedure to skip construction of <filename>libpq++</filename>.
</para>
<para>
Use the <option>--with-includes</option> and
<option>--with-libraries</option> options if you want to build
<productname>Postgres</productname> using include files or libraries
that are not installed in your system's standard search path. For
example, you might use these to build with an experimental version of
Tcl. If you need to specify more than one nonstandard directory for
include files or libraries, do it like this:
<programlisting>
--with-includes="/opt/tcl/include /opt/perl5/include"
</programlisting>
</para>
</sect1>
<sect1>
<title>Parameters for Building (<application>make</application>)</title>
<para>
Many installation-related parameters can be set in the building
stage of <productname>Postgres</productname> installation.
</para>
<para>
In most cases, these parameters should be placed in a file,
<filename>Makefile.custom</filename>, intended just for that purpose.
The default distribution does not contain this optional file, so you
will create it using a text editor of your choice. When upgrading installations,
you can simply copy your old Makefile.custom to the new installation before
doing the build.
</para>
<para>
Alternatively, you can set variables on the <application>make</application>
command line:
<programlisting>
make [ <replaceable>variable</replaceable>=<replaceable>value</replaceable> [...] ]
</programlisting>
</para>
<para>
A few of the many variables that can be specified are:
<variablelist>
<varlistentry>
<term>
<envar>POSTGRESDIR</envar>
</term>
<listitem>
<para>
Top of the installation tree.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term>
<envar>BINDIR</envar>
</term>
<listitem>
<para>
Location of applications and utilities.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term>
<envar>LIBDIR</envar>
</term>
<listitem>
<para>
Location of object libraries, including shared libraries.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term>
<envar>HEADERDIR</envar>
</term>
<listitem>
<para>
Location of include files.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term>
<envar>ODBCINST</envar>
</term>
<listitem>
<para>
Location of installation-wide <application>psqlODBC</application>
(<acronym>ODBC</acronym>) configuration file.
</para>
</listitem>
</varlistentry>
</variablelist>
</para>
<para>
There are other optional parameters which are not as commonly used.
Many of those listed below are appropriate when doing
<application>Postgres</application> server code development.
<variablelist>
<varlistentry>
<term>
<envar>CFLAGS</envar>
</term>
<listitem>
<para>
Set flags for the C compiler.
Should be assigned with "+=" to retain relevant default parameters.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term>
<envar>YFLAGS</envar>
</term>
<listitem>
<para>
Set flags for the yacc/bison parser. <option>-v</option> might be
used to help diagnose problems building a new parser.
Should be assigned with "+=" to retain relevant default parameters.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term>
<envar>USE_TCL</envar>
</term>
<listitem>
<para>
Enable Tcl interface building.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term>
<envar>HSTYLE</envar>
</term>
<listitem>
<para>
DocBook <acronym>HTML</acronym> style sheets for building the
documentation from scratch.
Not used unless you are developing new documentation from the
DocBook-compatible <acronym>SGML</acronym> source documents in
<filename>doc/src/sgml/</filename>.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term>
<envar>PSTYLE</envar>
</term>
<listitem>
<para>
DocBook style sheets for building printed documentation from scratch.
Not used unless you are developing new documentation from the
DocBook-compatible <acronym>SGML</acronym> source documents in
<filename>doc/src/sgml/</filename>.
</para>
</listitem>
</varlistentry>
</variablelist>
</para>
<para>
Here is an example <filename>Makefile.custom</filename> for a
PentiumPro Linux system:
<programlisting>
# Makefile.custom
# Thomas Lockhart 1999-06-01
POSTGRESDIR= /opt/postgres/current
CFLAGS+= -m486 -O2
# documentation
HSTYLE= /home/tgl/SGML/db118.d/docbook/html
PSTYLE= /home/tgl/SGML/db118.d/docbook/print
</programlisting>
</para>
</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-data:t
sgml-parent-document:nil
sgml-default-dtd-file:"./reference.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:("/usr/lib/sgml/catalog")
sgml-local-ecat-files:nil
End:
-->
This diff is collapsed.
This diff is collapsed.
<!--
$Header: /cvsroot/pgsql/doc/src/sgml/Attic/layout.sgml,v 2.3 2000/03/31 03:27:40 thomas Exp $
-->
<chapter id="layout">
<Title>System Layout</Title>
<Para>
<Figure Id="ADMIN-LAYOUT">
<Title><ProductName>Postgres</ProductName> file layout</Title>
<Graphic Align="center" FileRef="layout.gif" Format="GIF"></Graphic>
</Figure>
<XRef LinkEnd="ADMIN-LAYOUT" EndTerm="ADMIN-LAYOUT">
shows how the <ProductName>Postgres</ProductName> distribution is laid
out when installed in the default way. For simplicity,
we will assume that <ProductName>Postgres</ProductName>
has been installed in the
directory <filename>/usr/local/pgsql</filename>. Therefore, wherever
you see the directory <filename>/usr/local/pgsql</filename> you should
substitute the name of the directory where
<ProductName>Postgres</ProductName> is
actually installed.
All <ProductName>Postgres</ProductName> commands are installed
in the directory
<filename>/usr/local/pgsql/bin</filename>. Therefore, you should add
this directory to your shell command path. If you use
a variant of the Berkeley C shell, such as csh or tcsh,
you would add
<ProgramListing>
set path = ( /usr/local/pgsql/bin path )
</ProgramListing>
in the .login file in your home directory. If you use
a variant of the Bourne shell, such as sh, ksh, or
bash, then you would add
<ProgramListing>
PATH=/usr/local/pgsql/bin:$PATH
export PATH
</ProgramListing>
to the .profile file in your home directory.
From now on, we will assume that you have added the
<ProductName>Postgres</ProductName> bin directory to your path.
In addition, we
will make frequent reference to "setting a shell
variable" or "setting an environment variable" throughout
this document. If you did not fully understand the
last paragraph on modifying your search path, you
should consult the Unix manual pages that describe your
shell before going any further.
</Para>
<Para>
If you have not set things up in the
default way, you may have some more work to do.
For example, if the database server machine is a remote machine, you
will need to set the <envar>PGHOST</envar> environment variable to the name
of the database server machine. The environment variable
<envar>PGPORT</envar> may also have to be set. The bottom line is this: if
you try to start an application program and it complains
that it cannot connect to the <Application>postmaster</Application>,
you must go back and make sure that your
environment is properly set up.
</Para>
</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-data:t
sgml-parent-document:nil
sgml-default-dtd-file:"./reference.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:("/usr/lib/sgml/catalog")
sgml-local-ecat-files:nil
End:
-->
This diff is collapsed.
<!-- <!--
$Header: /cvsroot/pgsql/doc/src/sgml/postgres.sgml,v 1.38 2000/07/01 15:05:47 petere Exp $ $Header: /cvsroot/pgsql/doc/src/sgml/postgres.sgml,v 1.39 2000/07/21 00:44:13 petere Exp $
--> -->
<!doctype book PUBLIC "-//OASIS//DTD DocBook V3.1//EN" [ <!doctype book PUBLIC "-//OASIS//DTD DocBook V3.1//EN" [
<!entity version "7.1">
<!entity majorversion "7.1">
<!entity about SYSTEM "about.sgml"> <!entity about SYSTEM "about.sgml">
<!entity history SYSTEM "history.sgml"> <!entity history SYSTEM "history.sgml">
<!entity info SYSTEM "info.sgml"> <!entity info SYSTEM "info.sgml">
...@@ -47,12 +50,9 @@ $Header: /cvsroot/pgsql/doc/src/sgml/postgres.sgml,v 1.38 2000/07/01 15:05:47 pe ...@@ -47,12 +50,9 @@ $Header: /cvsroot/pgsql/doc/src/sgml/postgres.sgml,v 1.38 2000/07/01 15:05:47 pe
%allfiles; %allfiles;
<!-- administrator's guide --> <!-- administrator's guide -->
<!entity config SYSTEM "config.sgml">
<!entity intro-ag SYSTEM "intro-ag.sgml"> <!entity intro-ag SYSTEM "intro-ag.sgml">
<!entity install SYSTEM "install.sgml"> <!entity installation SYSTEM "installation.sgml">
<!entity installw SYSTEM "install-win32.sgml"> <!entity installw SYSTEM "install-win32.sgml">
<!entity layout SYSTEM "layout.sgml">
<!entity ports SYSTEM "ports.sgml">
<!entity recovery SYSTEM "recovery.sgml"> <!entity recovery SYSTEM "recovery.sgml">
<!entity regress SYSTEM "regress.sgml"> <!entity regress SYSTEM "regress.sgml">
<!entity release SYSTEM "release.sgml"> <!entity release SYSTEM "release.sgml">
...@@ -103,6 +103,12 @@ $Header: /cvsroot/pgsql/doc/src/sgml/postgres.sgml,v 1.38 2000/07/01 15:05:47 pe ...@@ -103,6 +103,12 @@ $Header: /cvsroot/pgsql/doc/src/sgml/postgres.sgml,v 1.38 2000/07/01 15:05:47 pe
<!entity page SYSTEM "page.sgml"> <!entity page SYSTEM "page.sgml">
<!entity protocol SYSTEM "protocol.sgml"> <!entity protocol SYSTEM "protocol.sgml">
<!entity sources SYSTEM "sources.sgml"> <!entity sources SYSTEM "sources.sgml">
<!-- see standalone-install.sgml about these -->
<!entity % flattext-install-ignore "INCLUDE">
<!entity % flattext-install-include "IGNORE">
]> ]>
<!-- entity manpages SYSTEM "man/manpages.sgml" subdoc --> <!-- entity manpages SYSTEM "man/manpages.sgml" subdoc -->
...@@ -217,10 +223,7 @@ Your name here... ...@@ -217,10 +223,7 @@ Your name here...
included twice. included twice.
&intro-ag; &intro-ag;
--> -->
&ports; &installation;
&config;
&layout;
&install;
&installw; &installw;
&runtime; &runtime;
&client-auth; &client-auth;
......
<!-- $Header: /cvsroot/pgsql/doc/src/sgml/standalone-install.sgml,v 2.1 2000/07/21 00:44:13 petere Exp $ -->
<!--
This file helps in generating the INSTALL text file that lives in the
top level directory of the distribution. The exact process is like
this:
1. Paste together with installation.sgml
2. Process with jade to HTML (use -V nochunks)
3. Remove "Chapter 1" heading
4. Save as text file in Netscape
5. Put in place of old INSTALL file
Running `make INSTALL' in the doc/src/sgml directory will do 1 through
3 for you.
-->
<!doctype chapter PUBLIC "-//OASIS//DTD DocBook V3.1//EN" [
<!entity version "7.1">
<!entity majorversion "7.1">
<!--
The standalone version has some portions that are different from the
version that is integrated into the Administrator's Guide, in
particular as regards links. The following are essentially SGML's
equivalent of C's #ifdef and friends. The other end of this is in
installation.sgml.
-->
<!entity % flattext-install-ignore "IGNORE">
<!entity % flattext-install-include "INCLUDE">
<!--
When you're building the Administrator's Guide, you want to flip the
IGNORE and INCLUDE.
-->
]>
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment