aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPeter Eisentraut <peter_e@gmx.net>2015-05-05 14:41:39 -0400
committerPeter Eisentraut <peter_e@gmx.net>2015-05-05 14:41:39 -0400
commit53f09657676782d5f6ccf563907fde48a6bea13c (patch)
tree64a8f352ebc45bc7ba3f205f7c9b53c14f4b2d9c
parent3b6db1f445e14bd189ebc99ce1e5535a1c624613 (diff)
downloadpostgresql-53f09657676782d5f6ccf563907fde48a6bea13c.tar.gz
postgresql-53f09657676782d5f6ccf563907fde48a6bea13c.zip
doc: Update installation instructions for new shared libperl/libpython handling
-rw-r--r--doc/src/sgml/installation.sgml61
1 files changed, 19 insertions, 42 deletions
diff --git a/doc/src/sgml/installation.sgml b/doc/src/sgml/installation.sgml
index 4968e09c99d..89648349c2b 100644
--- a/doc/src/sgml/installation.sgml
+++ b/doc/src/sgml/installation.sgml
@@ -169,32 +169,22 @@ su - postgres
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 any case it is the choice of whomever
- installed Perl at your site.
+ installed Perl at your site. <filename>configure</filename> will fail
+ if building <application>PL/Perl</application> is selected but it cannot
+ find a shared <filename>libperl</filename>. In that case, 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>
+
+ <para>
If you intend to make more than incidental use of
<application>PL/Perl</application>, you should ensure that the
<productname>Perl</productname> installation was built with the
<literal>usemultiplicity</> option enabled (<literal>perl -V</>
will show whether this is the case).
</para>
-
- <para>
- If you don't have the shared library but you need one, a message
- like this will appear during the <productname>PostgreSQL</>
- 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>
@@ -220,28 +210,15 @@ su - postgres
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 <productname>PostgreSQL</> 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 create 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.
+ <productname>Python</productname> installation built from source, but a
+ shared library is available in many operating system
+ distributions. <filename>configure</filename> will fail if
+ building <application>PL/Python</application> is selected but it cannot
+ find a shared <filename>libpython</filename>. That might mean that you
+ either have to install additional packages or rebuild (part of) your
+ <productname>Python</productname> installation to provide this shared
+ library. When building from source, run <productname>Python</>'s
+ configure with the <literal>--enable-shared</> flag.
</para>
</listitem>