]> granicus.if.org Git - postgresql/commitdiff
doc: Update installation instructions for new shared libperl/libpython handling
authorPeter Eisentraut <peter_e@gmx.net>
Tue, 5 May 2015 18:41:39 +0000 (14:41 -0400)
committerPeter Eisentraut <peter_e@gmx.net>
Tue, 5 May 2015 18:41:39 +0000 (14:41 -0400)
doc/src/sgml/installation.sgml

index 4968e09c99d5b563377ef4018f82282b4c187790..89648349c2b6a60399a97bf1802af75b26d2385e 100644 (file)
@@ -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>